When it comes to client-to-microservice communication, an application's client calls each of the microservices directly using the public endpoint (https://serviceName.api.dineshonjava.name) of that microservice. In the case of a clustered microservice, a URL would map to the load balance of a microservice.
The following diagram illustrates client-to-microservice communication:
As you can see in the preceding diagram, the mobile and browser clients make requests to each of the services in order to retrieve order details. This approach has many challenges and limitations.