Аннотация
As few empirical performance comparisons of modern Python web frameworks exist, it is hard to choose an appropriate architecture under real I/O-bound workloads. This study compares a monolithic back-end implemented with Django, a popular framework implementing the model-view-template software design pattern, with a microservice back-end built using FastAPI. Running load tests using Apache JMeter inside a Docker container indicated a several-fold improvement in performance with the microservice architecture. FastAPI, in a microservice architecture, yielded more than 6 times the throughput of the monolithic Django architecture: 67.8 req/sec versus 10.1 req/sec. Additionally, FastAPI had a significantly lower average latency with the same 0.00% error rate. The empirical results of this work show that for I/O-bound applications, a modern asynchronous microservice architecture can provide much better performance and scalability than a customary monolithic architecture.