When we are running multiple copies of your application, we should have the ability to discover where they are running and should be able to connect to them. This is especially important in case of failures, where Mesos relaunches services on other machines, but clients should still be able to connect. There are two popular ways to discover services:
Domain Name Service (DNS) based discovery is very general and thus, it is easier to integrate with a lot of tools, while specialized solutions require understanding different framework-specific APIs. On the other hand, with DNS-based discovery methods, it might be harder to provide richer information about services, while specific solutions can provide extra information regarding service health and load. We will cover one DNS-based service discovery mechanism here—Mesos-DNS, but there are other service discovery solutions...