grpc/README.md

45 lines
1.2 KiB
Markdown
Raw Normal View History

2020-11-06 08:36:22 +00:00
# gRPC
A utility module, largely taken from the [go-micro](https://github.com/micro/go-micro) patterns (and a good amount of code too...)
with pure gRPC ecosystem modules.
Principles:
- Pluggable
- No singleton
2020-11-06 08:36:22 +00:00
Features:
- [x] simple configuration with options
- [x] embeded gorm database with options (branch db)
- [x] simple TLS configuration
- [ ] TLS auth
- [ ] client connection pool
- [ ] registry / resolver resolution
- [ ] mdns
- [ ] kubernetes
- [ ] default interceptors implementation:
- [ ] validation
- [ ] health
- [ ] context logger
- [ ] sentry
- [ ] rate-limiting
- [ ] auth claim in context
- [ ] recovery
- [ ] tracing (open-tracing)
- [ ] metrics (prometheus)
- [ ] retries
- [ ] context DB / transaction
- ...
- [ ] api gateway with middleware:
- [ ] auth
- [ ] cors
- [ ] logging
- [ ] tracing
2020-11-06 08:36:22 +00:00
- [ ] metrics
2020-11-06 14:08:33 +00:00
- [ ] broker, based on nats-streaming
### Used modules:
- https://github.com/grpc-ecosystem/go-grpc-middleware
- https://github.com/grpc-ecosystem/grpc-opentracing
- https://github.com/grpc-ecosystem/go-grpc-prometheus
- https://github.com/grpc-ecosystem/grpc-gateway