Hands-On Microservices with Kubernetes
上QQ阅读APP看书,第一时间看更新

Getting to know Go kit

You can write your microservices from scratch (in Go or any other language) and they will interact with each other just fine through their APIs. However, in a real-world system, there will be a large number of shared and/or cross-cutting concerns that you want to be consistent:

  • Configuration
  • Secret management
  • Central logging
  • Metrics
  • Authentication
  • Authorization
  • Security
  • Distributed tracing
  • Service discovery

In practice, microservices in most large production systems will need to comply with certain policies for those concerns.

Enter Go kit (https://gokit.io/). Go kit takes a very modular approach to the microservices space. It provides a high degree of separation of concerns, a recommended approach for structuring your microservice, and a lot of flexibility. As the website says, Few opinions, lightly held.