Book Image

Hands-On Microservices with Django

By : Tieme Woldman
Book Image

Hands-On Microservices with Django

By: Tieme Woldman

Overview of this book

Are you a Django developer looking to leverage microservices to create optimized and scalable web applications? If yes, then this book is for you. With microservices, you can split an application into self-contained services, each with a specific scope running asynchronously while collectively executing processes. Written by an experienced Python developer, Hands-On Microservices with Django teaches you how to develop and deploy microservices using Django and accompanying components such as Celery and Redis. You'll start by learning the principles of microservices and message/task queues and how to design them effectively. Next, you’ll focus on building your first microservices with Django RESTful APIs (DFR) and RabbitMQ, mastering the fundamentals along the way. As you progress, you’ll get to grips with dockerizing your microservices. Later, you’ll discover how to optimize and secure them for production environments. By the end of this book, you’ll have the skills you need to design and develop production-ready Django microservices applications with DFR, Celery/RabbitMQ, Redis, and Django's cache framework.
Table of Contents (18 chapters)
Free Chapter
1
Part 1:Introducing Microservices and Getting Started
5
Part 2:Building the Microservices Foundation
11
Part 3:Taking Microservices to the Production Level

Introducing testing microservices

We test our software to ensure it fulfills the requirements set by the product owner and stakeholders. Software testing is a field in itself with different philosophies. To take the extremes, some say testers should know as little as possible about the software to test and test it in an exploratory way as a new user would. In contrast, others argue that testers should know as much as possible about the software to test so that testers can design test scenarios upfront and then test the software according to these scenarios.

We, developers, belong to the latter group because we know the software’s inner and technical details, enabling us to perform white-box testing where we test scenarios based on our technical knowledge of the software under test.

For testing in general, and therefore also for testing microservices, we have to deal with these factors when we set up our tests:

  • You can’t test everything and all scenarios...