How to call HTTP dependencies with the httpclient package: one client per dependency, built in Init from httpclient.Settings sourced with config.Struct, TLS and plain text, which requests are retried and how the end user’s Classify decides what an answer means, Retry-After and the timeouts, the circuit breaker and its log records, the body rules, HTTP/2 behind a Kubernetes Service, what it records, and how to test the calls against a fake dependency.
How to call gRPC dependencies with the grpcclient package: one Client per dependency, built in Init from grpcclient.Settings sourced with config.Struct, TLS and plain text, names and addresses behind a ClusterIP or a headless Service and spreading load with the server’s MaxConnectionAge, which calls are retried and how the end user’s Classify decides what a code means, the pushback, the circuit breaker and its log records, streams, what it records, readiness with Connected, and how to test the end user’s whole App next to a grpcserver backend.