Communication between services in a microservice architecture
In the previous chapter, we discussed the development of simple services with the Ballerina language. We addressed the use of the HTTP server to manage HTTP requests. But, when it comes to production systems, we need to consider several factors in dealing with communication between services, such as how each service finds other services, how to manage failures, and so on. In this section, we will discuss how to solve these problems and build a reliable platform with microservice architecture.
Communication over services in the Kubernetes cluster
When two services need to communicate with each other, the client should know the address of the server to be connected with it. In the HTTP, we use a URL to represent this unique address. The URL consists of the hostname and the port number to connect to.
The hostname is a human-readable text that can be used to uniquely identify a node in a network. It acts as a label...