Netflix's Eureka and Spring Boot from the Java community are famous for building microservices. The Go Micro package provides the same set of features. It is a toolkit for building microservices in Go. It is lightweight, which means start small and go big.
It has a Go style of adding services, which makes developers feel good. In the upcoming sections, we will see how to create a microservice with the steps defined by Go Micro. Go Micro provides requirements to implement RPC and event-driven architectures (EDAs). It also has a pluggable interface where we can plug any external functionality.
The main features supported by Go Micro are as follows:
- Request/response
- Service discovery
- Load balancing
- Message encoding
- Async messaging
- Pluggable interfaces
Request/response is a plain HTTP/RPC call. Service discovery is...