things like naming, load balancing and service discovery can be done by a well managed dynamic dns system
monitoring / "circuit breakers" would probably require a proxy I guess
monitoring / "circuit breakers" would probably require a proxy I guess
you can use existing tools to introspect state (e.g. dig), and with sufficient logging it's perfectly debuggable
By sending specific headers (and having your application forward them) one can have per request routing[1] and/or tracing[2].
[1] https://blog.buoyant.io/2016/11/04/a-service-mesh-for-kubern...
[2] https://blog.buoyant.io/2017/03/14/a-service-mesh-for-kubern...
oxymoron?