Book Image

Implementing Azure: Putting Modern DevOps to Use

By : Florian Klaffenbach, Oliver Michalski, Markus Klein, Mohamed Waly, Namit Tanasseri, Rahul Rai
Book Image

Implementing Azure: Putting Modern DevOps to Use

By: Florian Klaffenbach, Oliver Michalski, Markus Klein, Mohamed Waly, Namit Tanasseri, Rahul Rai

Overview of this book

This Learning Path helps you understand microservices architecture and leverage various services of Microsoft Azure Service Fabric to build, deploy, and maintain highly scalable enterprise-grade applications. You will learn to select an appropriate Azure backend structure for your solutions and work with its toolkit and managed apps to share your solutions with its service catalog. As you progress through the Learning Path, you will study Azure Cloud Services, Azure-managed Kubernetes, and Azure Container Services deployment techniques. To apply all that you’ve understood, you will build an end-to-end Azure system in scalable, decoupled tiers for an industrial bakery with three business domains. Toward the end of this Learning Path, you will build another scalable architecture using Azure Service Bus topics to send orders between decoupled business domains with scalable worker roles processing these orders. By the end of this Learning Path, you will be comfortable in using development, deployment, and maintenance processes to build robust cloud solutions on Azure. This Learning Path includes content from the following Packt products: • Learn Microsoft Azure by Mohamed Wali • Implementing Azure Solutions - Second Edition by Florian Klaffenbach, Oliver Michalski, Markus Klein • Microservices with Azure by Namit Tanasseri and Rahul Rai
Table of Contents (29 chapters)
Title Page
Copyright and Credits
About Packt
Contributors
Preface
Index

Service Façade \ API Gateway


 

 

 

 

 

 

 

 

 

 

 

 

 

 

Problem

Microservices architecture recommends services to be decomposed as simpler units which can be knit together to achieve an end-to-end business use case. This results in client being cognizant of services at a granular level thereby increasing the complexity of management overheads related to communication, transformation, and transaction. Any change in the API contracts of the Microservices will also impact the client impacting the stability of the system. Also, with an increase in the number of services in the system, the complexity of client applications increases to accommodate more communication channels and service discovery overheads. The following diagram illustrates such a scenario:

Service Façade (Problem)

 

Solution

Microservices, forced by the very idea behind the concept, recommend granularization of services to improve reuse and to enforce single responsibility principle. While this improves maintainability, it also introduces the...