Project with microservice architecture.
Microservices with API Gateway which handles incoming HTTP requests. HTTP requests will be forwarded to these Microservices by gRPC. Additionally, we deal with Authentication, Redis and PostgreSQL.
Microservice architecture is an architectural style that structures an application as a collection of small, loosely coupled, and independently deployable services. In this architecture, each service represents a specific business capability and can be developed, deployed, and scaled independently. Services communicate with each other through well-defined APIs, typically over lightweight protocols like HTTP or messaging queues.
gRPC is a high-performance, open-source framework developed by Google for building remote procedure call (RPC) systems. It uses Protocol Buffers (protobuf) as the interface definition language (IDL) for describing the API contract between the client and server. gRPC supports multiple programming languages, including Go, Python, Java, and more.
- Git
- Docker
Repositories:
- Lamia EnvDev ( Docker )
- Lamia Gateway ( Go -> Micro Service ) Routing
- Lamia Auth ( Go -> Micro Service ) Authenticate
- Lamia Shared ( Go - Python -> Package) Generate proto files, helper files and etc.
- Lamia Nginx (Nginx -> WebServer )
sudo apt install git-all
2. Pull Lamia EnvDev
git pull https://github.com/erfansahebi/lamia_envdev
In this repo, we have a shell for pulling all Repositories.
chmod +x build.sh
sh build.sh
make build
cp .env.example .env
dokcer compose up --build -d