In this chapter, we explored how to achieve concurrency in Python applications and how it can be useful. During this exploration, we uncovered the capabilities of the Python multithreading module and how it can be used to spawn multiple threads to divide workloads on. We then moved on to understand how to synchronize the actions of those threads and learned about various issues that may crop up in a multithreaded application, if not taken care of. The chapter then moved on to explore the limitations that are imposed by the presence of the global interpreter lock (GIL)in some Python implementations and how it affects multithreaded workloads. To explore possible ways to overcome the restrictions imposed by the GIL, we moved on to understand the use of Python's multiprocessing module and how it can help us to leverage the full potential of a multiprocessor system by achieving parallelism powered by the use of multiple processes instead of multiple threads.
Hands-On Enterprise Application Development with Python
By :
Hands-On Enterprise Application Development with Python
By:
Overview of this book
Dynamically typed languages like Python are continuously improving. With the addition of exciting new features and a wide selection of modern libraries and frameworks, Python has emerged as an ideal language for developing enterprise applications. Hands-On Enterprise Application Development with Python will show you how to build effective applications that are stable, secure, and easily scalable.
The book is a detailed guide to building an end-to-end enterprise-grade application in Python. You will learn how to effectively implement Python features and design patterns that will positively impact your application lifecycle. The book also covers advanced concurrency techniques that will help you build a RESTful application with an optimized frontend. Given that security and stability are the foundation for an enterprise application, you’ll be trained on effective testing, performance analysis, and security practices, and understand how to embed them in your codebase during the initial phase. You’ll also be guided in how to move on from a monolithic architecture to one that is service oriented, leveraging microservices and serverless deployment techniques.
By the end of the book, you will have become proficient at building efficient enterprise applications in Python.
Table of Contents (24 chapters)
Title Page
Copyright and Credits
About Packt
Contributors
Preface
Free Chapter
Using Python for Enterprise
Design Patterns – Making a Choice
Building for Large-Scale Database Operations
Dealing with Concurrency
Building for Large-Scale Request Handling
Example – Building BugZot
Building Optimized Frontends
Writing Testable Code
Profiling Applications for Performance
Securing Your Application
Taking the Microservices Approach
Testing and Tracing in Microservices
Going Serverless
Deploying to the Cloud
Enterprise Application Integration and its Patterns
Microservices and Enterprise Application Integration
Assessment
Other Books You May Enjoy
Index
Customer Reviews