ABSTRACT

Microservices Architecture is considered as the most efficient architectural pattern and style for producing and sustaining enterprise-grade applications which require frequent deployment and continuous delivery. This chapter presents popular design patterns that are useful for the design, development, and deployment of microservices. It aims to understand how different categories of patterns, such as decomposition patterns, composition patterns, observability patterns, database architecture patterns, cross-cutting concern patterns, and deployment patterns, are useful for Microservices architecture. The chapter examines in order to detail all kinds of useful and usable patterns toward microservices-centric application design, development, composition, and deployment. The goal of microservices is to increase the velocity of application releases; patterns can help mitigate the challenges associated with the design, development, and deployment of microservices-based applications. Microservices are nothing more than regular distributed systems. The key differentiator is that the number of participating and contributing microservices for any distributed application is quite huge.