Book Image

Python API Development Fundamentals

By : Jack Chan, Ray Chung, Jack Huang
Book Image

Python API Development Fundamentals

By: Jack Chan, Ray Chung, Jack Huang

Overview of this book

Python is a flexible language that can be used for much more than just script development. By knowing the Python RESTful APIs work, you can build a powerful backend for web applications and mobile applications using Python. You'll take your first steps by building a simple API and learning how the frontend web interface can communicate with the backend. You'll also learn how to serialize and deserialize objects using the marshmallow library. Then, you'll learn how to authenticate and authorize users using Flask-JWT. You'll also learn how to enhance your APIs by adding useful features, such as email, image upload, searching, and pagination. You'll wrap up the whole book by deploying your APIs to the cloud. By the end of this book, you'll have the confidence and skill to leverage the power of RESTful APIs and Python to build efficient web applications.
Table of Contents (12 chapters)

Caching

Caching means storing data in a temporary space (a cache) so that it can be retrieved faster in subsequent requests. The temporary space can be application memory, server hard disk space, or something else. The whole purpose of caching is to lighten the workload by avoiding any heavy processes for querying the data again. For example, in our Smilecook application, if we reckon that the recipes from a popular author will always get queried by the users, we can cache these recipes. So, the next time that users ask for these recipes, we can just send back the recipes in the cache instead of querying against our database. You can see caching everywhere. Almost all applications have caching implemented nowadays. Even in our local browsers, we save website results on the local hard disk to achieve faster access next time.

For server-level caching, most of the time, the cache is stored in the same web server as the application. But technically speaking, it can be stored in another...