Creating a Service
Health Checking
Authentication
Access token
JSON Web Token
Service Discovery
Load-balancing
Centralized configuration
Spring Cloud config
Viper
Messaging
- Request/response - a service sends a request message to a recipient and expects to receive a reply message promptly
- Notifications - a sender sends a message a recipient but does not expect a reply. Nor is one sent.
- Request/asynchronous response - a service sends a request message to a recipient and expects to receive a reply message eventually
- Publish/subscribe - a service publishes a message to zero or more recipients
- Publish/asynchronous response - a service publishes a request to one or recipients, some of whom send back a reply
Apache Kafka RabbitMQ
Service Discovery
Client-side discovery
Serf
consul
etcd
eureka
Zookeeper
Server-side discovery
Load Balancing
Observability
Log aggregation
Application metrics
Monitoring
Prometheus
Grafana
sentry
Audit logging
Distributed tracing
opencensus-go
jaeger
OpenTelemetr
zipkin
spring-cloud-sleuth
pinpoint
Application Performance Management
pinpoint
Circuit Breakers
hystrix-go
Analyzing gRPC messages using Wireshark
API Gateway
kong
Reference
gRPC Service Discovery & load balancing
Service Discovery in a Microservices Architecture
ManagedHealthStatusService.java
Code including health check, loading balancing, service discovery with gin