Micromovies2 is a sample application using Go-Kit and various dependencies, focusing on microservices architecture as well as deployment, monitoring, tracing, logging and stress testing. CockroachDB is used as RDBMS. It's all Go! ecosystem aside from jmeter for stress testing.
Micromovies2 is divided into 5 microservices, each having it's purpose. Microservices internal communication is provided by grpc. Client facing communication is using REST API and is provided by APIGateway Service. Here are the services:
- APIGateway
- JWTAuth
- Movies
- Users
- Vault
- go-kit
- httprouter
- zap
- opentracing/opentracing-go
- swagger
- casbin
- pgx
- pflags
- grpc
- cockroachdb
- jaeger
- prometheus
- grafana
- jmeter
- vgo
git clone https://github.com/farhadf/micromovies2
cd micromovies2
docker-compose up