Skip to content

pvfarooq/multi-framework-microservices

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple e-commerce backend service using microservices

A learning-focused implementation of a microservices-based e-commerce backend system. This project demonstrates microservices architecture, message queuing, and containerization principles using modern Python technologies.

Technology Stack

Backend Framework & Tools

FastAPI: Modern, fast web framework for building APIs SQLAlchemy: SQL toolkit and ORM Alembic: Database migration tool Pydantic: Data validation using Python type annotations

Data Storage & Messaging

PostgreSQL: Primary database for all services RabbitMQ: Message broker for inter-service communication

Infrastructure

Docker: Containerization of services Docker Compose: Multi-container orchestration

###Project Structure

├── main_service/             # User and Product management service
│   ├── alembic/              # Database migrations
│   ├── messaging/            # RabbitMQ communication handlers
│   ├── user/                 # User module
│   │   ├── models.py         # SQLAlchemy models
│   │   ├── schemas.py        # Pydantic schemas
│   │   └── crud.py          # Database operations
│   ├── product/             # Product module
│   │   ├── models.py
│   │   ├── schemas.py
│   │   └── crud.py
│   ├── core/                # Core configurations
│   │   ├── db.py           # Database configuration
│   │   └── config.py       # Service configuration
│   ├── Dockerfile
│   ├── main.py             # FastAPI application entry point
│   ├── requirements.txt
│   └── .env
│
├── order_service/           # Order management service
│   ├── alembic/
│   ├── messaging/
│   ├── order/
│   │   ├── models.py
│   │   ├── schemas.py
│   │   └── crud.py
│   ├── core/
│   │   ├── db.py
│   │   └── config.py
│   ├── Dockerfile
│   ├── main.py
│   ├── requirements.txt
│   └── .env
│
├── docker-compose.yml       # Service orchestration configuration
├── Makefile                # Development automation commands
└── README.md

API Documentation

Once the services are running, access the API documentation:

Main Service: http://localhost:8000/docs

Order Service: http://localhost:8001/docs

Note

This project is intended for learning purposes and demonstrates microservices architecture concepts. It may not be suitable for production use without additional security and performance considerations.

About

A straightforward e-commerce backend built with a microservices architecture using FastAPI and ExpressJS

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy