Scaling your microservice in Marathon
One of the most important design decisions in building a microservice is scalability. If your microservice is not scalable, there is no point in deploying it as a microservice; it could in fact be a huge monolithic application. There are several ways to scale a microservice. It also depends on the transport type your microservice uses. If your microservice uses HTTP, you should consider load-balancing your HTTP endpoints in various instances of your microservice. Another approach is using an asynchronous messaging system, such as ActiveMQ, Kafka, RabbitMQ, and ZeroMQ.
Getting ready
The geolocation microservice uses RESTful APIs to expose its endpoints. We should be considering load-balancing tools to load-balance the endpoints across instances of the geolocation application. In order to scale our application, let's first bring up the Marathon web interface.
How to do it...
Once the Marathon web UI is up and running, deploy the application if it is not already...