Monday, May 31, 2021

FastAPI Endpoint Type with Pydantic

Pydantic library helps to define structured and clear types for FastAPI endpoints. In this video I explain how to define Pydantic type with nested list structure, I show how it works with a live demo. You will get to know how to convert input data into JSON structure. Enjoy!


Monday, May 24, 2021

Event-Driven Microservice with RabbitMQ and FastAPI

Event-driven microservices architecture brings scalability and better application structure. In this video, I show a demo based on Web API implementation with FastAPI, Celery. The event is sent to a group of microservices through RabbitMQ broker. Services communicate with each other through RabbitMQ. Model training service calls data service to fetch and prepare data for training.


Monday, May 17, 2021

Web API with FastAPI, RabbitMQ and Celery

With Web API you can create access to microservice functionality. In this video, I explain how to create scalable Web API with FastAPI, Celery and RabbitMQ. Celery is responsible to execute async Web API requests and RabbitMQ enables the communication between Web API and microservices.


Monday, May 10, 2021

Celery Distributed Task Queue Display with Flower UI

I explain how you can visualize Celery distributed task queue with Flower UI. This is useful when monitoring asynchronous tasks.


Wednesday, May 5, 2021

Celery Distributed Task Queue with FastAPI for Machine Learning

This sample app demonstrates how to implement Celery distributed task queues on top of RabbitMQ broker for Machine Learning model training and data processing. We are using TensorFlow in this example to train the model. API request comes through FastAPI and it is being processed asynchronously by Celery. There is a separate API endpoint to check task status. Multiple requests can be initiated and processed at the same time in parallel. Celery tasks can be monitored using Flower monitoring tool.