Java -- JMX
RMI (Remote Method Invocation)
RMI is a way of calling methods on remote objects over a network connection. It is similar to RPC, but the biggest difference is that RPC deals with data structures such as primitives, lists, maps etc in its stubs; while RMI deals with Java objects. Thus, RMI requires both client and server to be written in Java. That is why RMI is a terribly constrained protocol.
Because RMI needs (un)marshals Java objects on the wire, it relies on Java Object Serialization. See this doc for more details about this binary protocol.
Why need I study RMI? Because JMX is built on top of RMI and many popular frameworks export metrics through JMX such as kafka.
JMX
https://dimovelev.blogspot.com/2013/10/out-of-box-jmx-over-firewall-in-hotspot.html
Jconsole vs jmxterm
This post is licensed under CC BY 4.0 by the author.