We just open-sourced kitty, a microservice framework extending go-kit - https://github.com/objenious/kitty
Kitty's goal is to ease development of microservices deployed on Kubernetes (or any similar orchestration platform). Kitty has an opinion on: - transports: only HTTP is supported (additional transports might be added), - errors: an error may be Retryable (e.g. 5XX status codes) or not (e.g. 4XX status codes), - status codes: unless specified, request decoding errors will generate 400 HTTP status codes. Kitty has no opinion on: - logging: no logs are generated by default, you can plug your logger and it will get additional context, - packages: kitty only imports go-kit and the standard library, - routers: you can use any router (a Gorilla Mux implementation is available in a sub-package, other routers can easily be plugged), - encoding: use whatever encoding you want (JSON, messagepack, protobuf, ...), - monitoring, metrics and tracing: use Istio, a sidecar process or a middleware. Kitty includes 2 sub-packages: - backoff: Retryable-aware exponential backoff (only Retryable errors trigger retries), - circuitbreaker: Retryable-aware circuit breaker (only Retryable errors trigger the circuit breaker). This is an alpha release - the package should be fairly stable, but non backwards-compatible changes might happen. License: MIT -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
