mirror of
https://github.com/linka-cloud/grpc.git
synced 2024-11-05 02:36:24 +00:00
certs | ||
client | ||
errors | ||
example | ||
google/api | ||
logger | ||
registry | ||
resolver | ||
service | ||
transport | ||
utils | ||
.gitignore | ||
go.mod | ||
go.sum | ||
LICENSE | ||
Makefile | ||
README.md | ||
tools.go |
gRPC
A utility module, largely taken from the go-micro patterns (and a good amount of code too...) with pure gRPC ecosystem modules.
Principles:
- Pluggable
- No singleton
Features:
- simple configuration with options
- embeded gorm database with options (branch db)
- 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
- metrics
- broker, based on nats-streaming