Book Image

Python Microservices Development – 2nd edition - Second Edition

By : Simon Fraser, Tarek Ziadé
Book Image

Python Microservices Development – 2nd edition - Second Edition

By: Simon Fraser, Tarek Ziadé

Overview of this book

The small scope and self-contained nature of microservices make them faster, cleaner, and more scalable than code-heavy monolithic applications. However, building microservices architecture that is efficient as well as lightweight into your applications can be challenging due to the complexity of all the interacting pieces. Python Microservices Development, Second Edition will teach you how to overcome these issues and craft applications that are built as small standard units using proven best practices and avoiding common pitfalls. Through hands-on examples, this book will help you to build efficient microservices using Quart, SQLAlchemy, and other modern Python tools In this updated edition, you will learn how to secure connections between services and how to script Nginx using Lua to build web application firewall features such as rate limiting. Python Microservices Development, Second Edition describes how to use containers and AWS to deploy your services. By the end of the book, you’ll have created a complete Python application based on microservices.
Table of Contents (14 chapters)
12
Other Books You May Enjoy
13
Index

Summary

In this chapter, we looked at how microservices can be containerized with containers, and how you can create a deployment entirely based on Docker images. Containers are a well-established technology that is widely used to run internet services. The most important thing to keep in mind is that a containerized application is ephemeral: it is designed to be destroyed and recreated on demand, and any data that is not externalized using a mount point is lost.

For provisioning and clustering your services, there is no generic solution, as the tools you use will depend on your needs. From a simple Docker Compose setup to a full Kubernetes cluster, each option provides different complexity and benefits. The best choice often depends on where you are to deploy your services, how your teams work, and how large your application needs to be in the present—there is no sense in planning for an unknowable future.

The best way to tackle this problem is to take baby...