Book Image

Cloud Native Python

By : Manish Sethi
Book Image

Cloud Native Python

By: Manish Sethi

Overview of this book

Businesses today are evolving so rapidly that having their own infrastructure to support their expansion is not feasible. As a result, they have been resorting to the elasticity of the cloud to provide a platform to build and deploy their highly scalable applications. This book will be the one stop for you to learn all about building cloud-native architectures in Python. It will begin by introducing you to cloud-native architecture and will help break it down for you. Then you’ll learn how to build microservices in Python using REST APIs in an event driven approach and you will build the web layer. Next, you’ll learn about Interacting data services and building Web views with React, after which we will take a detailed look at application security and performance. Then, you’ll also learn how to Dockerize your services. And finally, you’ll learn how to deploy the application on the AWS and Azure platforms. We will end the book by discussing some concepts and techniques around troubleshooting problems that might occur with your applications after you’ve deployed them. This book will teach you how to craft applications that are built as small standard units, using all the proven best practices and avoiding the usual traps. It's a practical book: we're going to build everything using Python 3 and its amazing tooling ecosystem. The book will take you on a journey, the destination of which, is the creation of a complete Python application based on microservices over the cloud platform
Table of Contents (14 chapters)
6
Creating UIs to Scale with Flux

MongoDB - How it is advantageous, and why are we using it?

Before we begin with the MongoDB installation, let's understand why we have chosen the MongoDB database and what it is needed for.

Let's take a look at the advantages of MongoDB over RDBMS:

  • Flexible schema: MongoDB is a document database in which one collection holds multiple documents. We don't need to define the schema of the documents prior to inserting the data, which means MongoDB defines the document's schema based on the data inserted into the documents; whereas, in an RDBMS, we need to define the schema of the tables before inserting data into it.
  • Less complexity: There are no complex joins in MongoDB, as we have in the case of RDBMS (for example: MySQL) databases.
  • Easier scalability: It is very easy to scale out MongoDB as compared to an RDBMS.
  • Fast accessibility: There is faster retrieval...