SlideShare a Scribd company logo
.NET Angluar Full Stack
Building Microservices with .NET Core 2.0
Microservices
F. BZIOU
Développement Web
Module:
F. BZIOU 2.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Plan
 Origin of microservices
 Discussing microservices
 Understanding the microservice architecture
 Advantages of microservices
 SOA versus microservices
 Understanding the problems with the monolithic architectural style
 Summary
A.Mazoul 3Programmation Mobile
.NET Core 2.0
Microservices
An Introduction to Microservices
Origin of microservices
“ Microservices is a specialization of and implementation approach for
SOA used to build flexible, independently deployable software systems.”
“ The microservice architectural style is an approach to
developing a single application as a suite of small services, each running in its
own process and communicating with lightweight mechanisms, often an HTTP
resource API. These services are built around business capabilities and
independently deployable by fully automated deployment machinery. There is a
bare minimum of centralized management of these services, which may be
written in different programming languages and use different data storage
technologies.”
F. BZIOU .NET AngularMicroservices
F. BZIOU 4.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Discussing microservices
 We implement microservices to satisfy business features and implement them with
reduced time to market and greater flexibility.
 Two important architectures that led to its existence:
The monolithic architecture style.
SOA.
F. BZIOU 5.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Discussing microservices( Monolithic Architecture)
 Large code base: This is a scenario where the code lines outnumber the
comments
by a great margin. As components are interconnected, we will have to bear with a
repetitive code base.
 Too many business modules: This is in regard to modules within the same
system.
 Codebase complexity: This results in a higher chance of code-breaking due to
the fix required in other modules or services.
 Complex code deployment: You may come across minor changes that would
require whole system deployment.
 One module failure affecting the whole system: This is in regard to modules that
depend on each other.
 Scalability: This is required for the entire system and not just the modules in it.
Intermodule dependency: This is due to tight coupling.
 Spiraling development time: This is due to code complexity and
interdependency.
 Inability to easily adapt to a new technology: In this case, the entire system
would need to be upgraded.
F. BZIOU 6.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Discussing microservices(Service-Oriented Architecture)
“ The main difference between SOA and monolithic is not one or multiple
assemblies. As the service in SOA runs as a separate process, SOA scales better compared
to monolithic.”
What is a service?
It can be a piece of code, program, or software that provides functionality to
other system components.
 This piece of code can interact directly with the database or indirectly through
another service.
It can be consumed by clients directly, where the client may be a website,
desktop app, mobile app, or any other device app.
F. BZIOU 7.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Discussing microservices(Service-Oriented Architecture)
F. BZIOU 8.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Discussing microservices(Service-Oriented Architecture)
Reusability: Multiple clients can consume the service. The service can also be simultaneously consumed
by other services. For example, OrderService is consumed by web and mobile clients. Now, OrderService can
also be used by the Reporting Dashboard UI.
Stateless: Services do not persist any state between requests from the client, that is, the service doesn't
know, nor care that the subsequent request has come from the client that has/hasn't made the previous
request.
Contract-based: Interfaces make it technology-agnostic on both sides of implementation and
consumption. It also serves to make it immune to the code updates in the underlying functionality.
Scalability: A system can be scaled up; SOA can be individually clustered with appropriate load balancing.
Upgradation: It is very easy to roll out new functionalities or introduce new versions of the existing
functionality. The system doesn't stop you from keeping multiple versions of the same business
functionality.
F. BZIOU 9.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Understanding the microservice architecture
“ The microservice architecture is a way to develop a single application
containing a set of smaller services. These services are independent of each other and
run in their own processes. ”
Smaller codebase: Each service is small, and therefore,
easier to develop and deploy as a unit.
Ease of independent environment: With the separation
of services, all developers work independently, deploy
independently, and no one is bothered about any
module dependency.
F. BZIOU 10.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Understanding the microservice architecture
How does the microservice architecture work?
 It's programming of the modern era, where we are expected to follow all SOLID principles. It's object-
oriented programming (OOP).
 It is the best way is to expose the functionality to other or external components in a way so that any other
programming language will be able to use the functionality without adhering to any specific user interfaces,
that is, services (web services, APIs, rest services, and so on).
 The whole system works as per a type of collaboration that is not interconnected or interdependent.
 Every component is liable for its own responsibilities. In other words, components are responsible for only
one functionality.
 It segregates code with a separation concept, and segregated code is reusable.
F. BZIOU 11.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Advantages of microservices
 Cost effective to scale
 Clear code boundaries
 Easier code changes
 Easy deployment
 Technology adaptation
 Distributed system
F. BZIOU 12.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
SOA versus microservices
The underlying communication system of SOA inherently suffers from
the following problems:
The fact that a system developed in SOA depends upon its components, which
are interacting with each other. So no matter how hard you try, it is eventually
going to face a bottleneck in the message queue.
Another focal point of SOA is imperative monogramming. With this, we lose
the path to make a unit of code reusable with respect to OOP.
F. BZIOU 13.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
SOA versus microservices :
Prerequisites of the microservice architecture
 Deployment and QA
 A collaboration platform for development
and operations team
 A monitoring framework
F. BZIOU 14.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Understanding problems with the monolithic architecture style
 Fault tolerance : Monolithic applications have high module interdependency as they are tightly coupled.
 Deployment challenges : any change in the order module would require the entire application to be
deployed again.
“ Scalability of a system is its capability to handle an
increasing/increased load of work. There are two main strategies or types of
scalability in which we can scale our application.”
( Vertical scaling or scale up , Horizontal scaling or scale out )
F. BZIOU 15.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Important microservices advantages
 Technology independence : we now have the power to use different technologies for each
microservice.
 Interdependency removal : it is easy to add new features, fix bugs, or upgrade technology within
each one. This will have no impact on other microservices.
 Alignment with business goals : respond to business needs and adapt to marketing trends is not a
by-product of microservices, but their goal.
 Cost benefits : Each microservice becomes an investment for the business since it can easily be
consumed by other microservices without having to redo the same code again and again.
 Security : You can have a part of the microservice ecosystem behind firewalls and
another part to user encryption.
…
F. BZIOU 16.NET AngularMicroservices
.NET Core 2.0
Microservices
An Introduction to Microservices
Summary
F.BZIOU 17.NET AngularMicroservices

More Related Content

What's hot

Testing strategies in a microservices architecture. Independence vs integration
Testing strategies in a microservices architecture.  Independence vs integrationTesting strategies in a microservices architecture.  Independence vs integration
Testing strategies in a microservices architecture. Independence vs integration
HYS Enterprise
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Niva tharan
 
MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...
MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...
MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...
CrimsonpublishersPRSP
 
Migration and Security in SOA | Torry Harris Whitepaper
Migration and Security in SOA | Torry Harris WhitepaperMigration and Security in SOA | Torry Harris Whitepaper
Migration and Security in SOA | Torry Harris Whitepaper
Torry Harris Business Solutions
 
Secure Computing With Java
Secure Computing With JavaSecure Computing With Java
Secure Computing With Java
white paper
 
Microservices&ap imanagement
Microservices&ap imanagementMicroservices&ap imanagement
Microservices&ap imanagement
pramodkumards
 
Wireless mobile content genteration application with RSS feed integration
Wireless mobile content genteration application with RSS feed integrationWireless mobile content genteration application with RSS feed integration
Wireless mobile content genteration application with RSS feed integration
Mike Taylor
 
1st Periodical Test
1st Periodical Test1st Periodical Test
1st Periodical Test
Airel Atendido
 

What's hot (8)

Testing strategies in a microservices architecture. Independence vs integration
Testing strategies in a microservices architecture.  Independence vs integrationTesting strategies in a microservices architecture.  Independence vs integration
Testing strategies in a microservices architecture. Independence vs integration
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...
MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...
MVC Architecture: A Detailed Insight to the Modern Web Applications Developme...
 
Migration and Security in SOA | Torry Harris Whitepaper
Migration and Security in SOA | Torry Harris WhitepaperMigration and Security in SOA | Torry Harris Whitepaper
Migration and Security in SOA | Torry Harris Whitepaper
 
Secure Computing With Java
Secure Computing With JavaSecure Computing With Java
Secure Computing With Java
 
Microservices&ap imanagement
Microservices&ap imanagementMicroservices&ap imanagement
Microservices&ap imanagement
 
Wireless mobile content genteration application with RSS feed integration
Wireless mobile content genteration application with RSS feed integrationWireless mobile content genteration application with RSS feed integration
Wireless mobile content genteration application with RSS feed integration
 
1st Periodical Test
1st Periodical Test1st Periodical Test
1st Periodical Test
 

Similar to Introduction to Microservices

What are the Advantages and Disadvantages of Microservices?
What are the Advantages and Disadvantages of Microservices? What are the Advantages and Disadvantages of Microservices?
What are the Advantages and Disadvantages of Microservices?
Zoe Gilbert
 
Microservices with mule
Microservices with muleMicroservices with mule
Microservices with mule
Govind Mulinti
 
Comparative Analysis of Software Architectures.pptx
Comparative Analysis of Software Architectures.pptxComparative Analysis of Software Architectures.pptx
Comparative Analysis of Software Architectures.pptx
ssuserecd44f
 
Microservices: Detailed Guide
Microservices: Detailed GuideMicroservices: Detailed Guide
Microservices: Detailed Guide
Biztech Consulting & Solutions
 
Microservices
MicroservicesMicroservices
Microservices with mule
Microservices with muleMicroservices with mule
Microservices with mule
alfa
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHYSELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
dannyijwest
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
IJwest
 
Architecting for speed: How agile innovators accelerate growth through micros...
Architecting for speed: How agile innovators accelerate growth through micros...Architecting for speed: How agile innovators accelerate growth through micros...
Architecting for speed: How agile innovators accelerate growth through micros...
Jesper Nordström
 
Meetup6 microservices for the IoT
Meetup6 microservices for the IoTMeetup6 microservices for the IoT
Meetup6 microservices for the IoT
Francesco Rago
 
Microservices.pptx
Microservices.pptxMicroservices.pptx
Microservices.pptx
EverestMedinilla2
 
Term paper 2073131
Term paper   2073131Term paper   2073131
Term paper 2073131
mtestman
 
Basics of Java Microservices: Frameworks, Examples & Use Cases
Basics of Java Microservices: Frameworks, Examples & Use CasesBasics of Java Microservices: Frameworks, Examples & Use Cases
Basics of Java Microservices: Frameworks, Examples & Use Cases
GrapesTech Solutions
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
3gamma
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
Jesper Nordström
 
MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.
PLovababu
 
اساليب البرمجيات الحديثة Modern Software Development
اساليب البرمجيات الحديثة Modern Software Developmentاساليب البرمجيات الحديثة Modern Software Development
اساليب البرمجيات الحديثة Modern Software Development
Mohamed Galal
 
AppDev with Microservices
AppDev with MicroservicesAppDev with Microservices
AppDev with Microservices
Rishabh Dugar
 
Best Spring Boot & MicroServices Classroom & Online Training Naresh-IT
Best Spring Boot & MicroServices Classroom & Online Training Naresh-ITBest Spring Boot & MicroServices Classroom & Online Training Naresh-IT
Best Spring Boot & MicroServices Classroom & Online Training Naresh-IT
manoharjgpsolutions
 
Building a High-Performance Reactive Microservices Architecture
Building a High-Performance Reactive Microservices ArchitectureBuilding a High-Performance Reactive Microservices Architecture
Building a High-Performance Reactive Microservices Architecture
Cognizant
 

Similar to Introduction to Microservices (20)

What are the Advantages and Disadvantages of Microservices?
What are the Advantages and Disadvantages of Microservices? What are the Advantages and Disadvantages of Microservices?
What are the Advantages and Disadvantages of Microservices?
 
Microservices with mule
Microservices with muleMicroservices with mule
Microservices with mule
 
Comparative Analysis of Software Architectures.pptx
Comparative Analysis of Software Architectures.pptxComparative Analysis of Software Architectures.pptx
Comparative Analysis of Software Architectures.pptx
 
Microservices: Detailed Guide
Microservices: Detailed GuideMicroservices: Detailed Guide
Microservices: Detailed Guide
 
Microservices
MicroservicesMicroservices
Microservices
 
Microservices with mule
Microservices with muleMicroservices with mule
Microservices with mule
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHYSELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
 
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
SELECTION MECHANISM OF MICRO-SERVICES ORCHESTRATION VS. CHOREOGRAPHY
 
Architecting for speed: How agile innovators accelerate growth through micros...
Architecting for speed: How agile innovators accelerate growth through micros...Architecting for speed: How agile innovators accelerate growth through micros...
Architecting for speed: How agile innovators accelerate growth through micros...
 
Meetup6 microservices for the IoT
Meetup6 microservices for the IoTMeetup6 microservices for the IoT
Meetup6 microservices for the IoT
 
Microservices.pptx
Microservices.pptxMicroservices.pptx
Microservices.pptx
 
Term paper 2073131
Term paper   2073131Term paper   2073131
Term paper 2073131
 
Basics of Java Microservices: Frameworks, Examples & Use Cases
Basics of Java Microservices: Frameworks, Examples & Use CasesBasics of Java Microservices: Frameworks, Examples & Use Cases
Basics of Java Microservices: Frameworks, Examples & Use Cases
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
 
Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...Architecting for speed: how agile innovators accelerate growth through micros...
Architecting for speed: how agile innovators accelerate growth through micros...
 
MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.MicroserviceArchitecture in detail over Monolith.
MicroserviceArchitecture in detail over Monolith.
 
اساليب البرمجيات الحديثة Modern Software Development
اساليب البرمجيات الحديثة Modern Software Developmentاساليب البرمجيات الحديثة Modern Software Development
اساليب البرمجيات الحديثة Modern Software Development
 
AppDev with Microservices
AppDev with MicroservicesAppDev with Microservices
AppDev with Microservices
 
Best Spring Boot & MicroServices Classroom & Online Training Naresh-IT
Best Spring Boot & MicroServices Classroom & Online Training Naresh-ITBest Spring Boot & MicroServices Classroom & Online Training Naresh-IT
Best Spring Boot & MicroServices Classroom & Online Training Naresh-IT
 
Building a High-Performance Reactive Microservices Architecture
Building a High-Performance Reactive Microservices ArchitectureBuilding a High-Performance Reactive Microservices Architecture
Building a High-Performance Reactive Microservices Architecture
 

Recently uploaded

LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Undress Baby
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
aymanquadri279
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 

Recently uploaded (20)

LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 

Introduction to Microservices

  • 1. .NET Angluar Full Stack Building Microservices with .NET Core 2.0 Microservices F. BZIOU Développement Web Module:
  • 2. F. BZIOU 2.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Plan  Origin of microservices  Discussing microservices  Understanding the microservice architecture  Advantages of microservices  SOA versus microservices  Understanding the problems with the monolithic architectural style  Summary
  • 3. A.Mazoul 3Programmation Mobile .NET Core 2.0 Microservices An Introduction to Microservices Origin of microservices “ Microservices is a specialization of and implementation approach for SOA used to build flexible, independently deployable software systems.” “ The microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.” F. BZIOU .NET AngularMicroservices
  • 4. F. BZIOU 4.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Discussing microservices  We implement microservices to satisfy business features and implement them with reduced time to market and greater flexibility.  Two important architectures that led to its existence: The monolithic architecture style. SOA.
  • 5. F. BZIOU 5.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Discussing microservices( Monolithic Architecture)  Large code base: This is a scenario where the code lines outnumber the comments by a great margin. As components are interconnected, we will have to bear with a repetitive code base.  Too many business modules: This is in regard to modules within the same system.  Codebase complexity: This results in a higher chance of code-breaking due to the fix required in other modules or services.  Complex code deployment: You may come across minor changes that would require whole system deployment.  One module failure affecting the whole system: This is in regard to modules that depend on each other.  Scalability: This is required for the entire system and not just the modules in it. Intermodule dependency: This is due to tight coupling.  Spiraling development time: This is due to code complexity and interdependency.  Inability to easily adapt to a new technology: In this case, the entire system would need to be upgraded.
  • 6. F. BZIOU 6.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Discussing microservices(Service-Oriented Architecture) “ The main difference between SOA and monolithic is not one or multiple assemblies. As the service in SOA runs as a separate process, SOA scales better compared to monolithic.” What is a service? It can be a piece of code, program, or software that provides functionality to other system components.  This piece of code can interact directly with the database or indirectly through another service. It can be consumed by clients directly, where the client may be a website, desktop app, mobile app, or any other device app.
  • 7. F. BZIOU 7.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Discussing microservices(Service-Oriented Architecture)
  • 8. F. BZIOU 8.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Discussing microservices(Service-Oriented Architecture) Reusability: Multiple clients can consume the service. The service can also be simultaneously consumed by other services. For example, OrderService is consumed by web and mobile clients. Now, OrderService can also be used by the Reporting Dashboard UI. Stateless: Services do not persist any state between requests from the client, that is, the service doesn't know, nor care that the subsequent request has come from the client that has/hasn't made the previous request. Contract-based: Interfaces make it technology-agnostic on both sides of implementation and consumption. It also serves to make it immune to the code updates in the underlying functionality. Scalability: A system can be scaled up; SOA can be individually clustered with appropriate load balancing. Upgradation: It is very easy to roll out new functionalities or introduce new versions of the existing functionality. The system doesn't stop you from keeping multiple versions of the same business functionality.
  • 9. F. BZIOU 9.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Understanding the microservice architecture “ The microservice architecture is a way to develop a single application containing a set of smaller services. These services are independent of each other and run in their own processes. ” Smaller codebase: Each service is small, and therefore, easier to develop and deploy as a unit. Ease of independent environment: With the separation of services, all developers work independently, deploy independently, and no one is bothered about any module dependency.
  • 10. F. BZIOU 10.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Understanding the microservice architecture How does the microservice architecture work?  It's programming of the modern era, where we are expected to follow all SOLID principles. It's object- oriented programming (OOP).  It is the best way is to expose the functionality to other or external components in a way so that any other programming language will be able to use the functionality without adhering to any specific user interfaces, that is, services (web services, APIs, rest services, and so on).  The whole system works as per a type of collaboration that is not interconnected or interdependent.  Every component is liable for its own responsibilities. In other words, components are responsible for only one functionality.  It segregates code with a separation concept, and segregated code is reusable.
  • 11. F. BZIOU 11.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Advantages of microservices  Cost effective to scale  Clear code boundaries  Easier code changes  Easy deployment  Technology adaptation  Distributed system
  • 12. F. BZIOU 12.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices SOA versus microservices The underlying communication system of SOA inherently suffers from the following problems: The fact that a system developed in SOA depends upon its components, which are interacting with each other. So no matter how hard you try, it is eventually going to face a bottleneck in the message queue. Another focal point of SOA is imperative monogramming. With this, we lose the path to make a unit of code reusable with respect to OOP.
  • 13. F. BZIOU 13.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices SOA versus microservices : Prerequisites of the microservice architecture  Deployment and QA  A collaboration platform for development and operations team  A monitoring framework
  • 14. F. BZIOU 14.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Understanding problems with the monolithic architecture style  Fault tolerance : Monolithic applications have high module interdependency as they are tightly coupled.  Deployment challenges : any change in the order module would require the entire application to be deployed again. “ Scalability of a system is its capability to handle an increasing/increased load of work. There are two main strategies or types of scalability in which we can scale our application.” ( Vertical scaling or scale up , Horizontal scaling or scale out )
  • 15. F. BZIOU 15.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Important microservices advantages  Technology independence : we now have the power to use different technologies for each microservice.  Interdependency removal : it is easy to add new features, fix bugs, or upgrade technology within each one. This will have no impact on other microservices.  Alignment with business goals : respond to business needs and adapt to marketing trends is not a by-product of microservices, but their goal.  Cost benefits : Each microservice becomes an investment for the business since it can easily be consumed by other microservices without having to redo the same code again and again.  Security : You can have a part of the microservice ecosystem behind firewalls and another part to user encryption. …
  • 16. F. BZIOU 16.NET AngularMicroservices .NET Core 2.0 Microservices An Introduction to Microservices Summary