Go-GRPC-Auth-Microservice
Go-GRPC-Auth-Microservice copied to clipboard
Go GRPC Auth Microservice
Golang Clean Architecture gRPC Auth microservice example with Prometheus, Grafana monitoring and Jaeger opentracing ⚡️
👨💻 Full list what has been used:
- GRPC - gRPC
- sqlx - Extensions to database/sql.
- pgx - PostgreSQL driver and toolkit for Go
- viper - Go configuration with fangs
- go-redis - Redis client for Golang
- zap - Logger
- validator - Go Struct and Field validation
- migrate - Database migrations. CLI and Golang library.
- testify - Testing toolkit
- gomock - Mocking framework
- CompileDaemon - Compile daemon for Go
- Docker - Docker
- Prometheus - Prometheus
- Grafana - Grafana
- Jaeger - Jaeger tracing
Recommendation for local development most comfortable usage:
make local // run all containers
make run // run the application
🙌👨💻🚀 Docker-compose files:
docker-compose.local.yml - run postgresql, redis, aws, prometheus, grafana containers
docker-compose.dev.yml - run all in docker
Docker development usage:
make docker
Local development usage:
make local
make run
Jaeger UI:
http://localhost:16686
Prometheus UI:
http://localhost:9090
Grafana UI:
http://localhost:3000