Book Image

Distributed Computing with Python

Book Image

Distributed Computing with Python

Overview of this book

CPU-intensive data processing tasks have become crucial considering the complexity of the various big data applications that are used today. Reducing the CPU utilization per process is very important to improve the overall speed of applications. This book will teach you how to perform parallel execution of computations by distributing them across multiple processors in a single machine, thus improving the overall performance of a big data processing task. We will cover synchronous and asynchronous models, shared memory and file systems, communication between various processes, synchronization, and more.
Table of Contents (15 chapters)
Distributed Computing with Python
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Chapter 5. Python in the Cloud

The previous chapter introduced you to Celery and other tools that we can use to create distributed applications with Python. We explored a couple of different distributed computing architectures: distributed task queues and distributed objects. There is, however, an important theme that we did not cover in any depth so far. It is the deployment of our finished application on multiple machines. This is exactly what this chapter is about.

Here, we will look at Amazon Web Services (AWS), the leading provider of cloud services, and how to deploy our distributed applications on its infrastructure. Clearly, the cloud is not the only way to deploy applications, and in the next chapter, we will, in fact, look at another way to deploy applications—HPC clusters. However, deploying to AWS or one of its competitors can be an easy and relatively inexpensive way of bringing a complex application to life.