
Yes in JMX we register our objects in mbean server using the ObjectName
and objectReference
. We can then change attributes or invoke methods remotely.
A connector makes a Java Management Extensions (JMX) technology MBean server accessible to remote Java technology-based clients.Many different implementations of connectors are possible. In particular, there are many possibilities for the protocol used to communicate over a connection between client and server.Some Connectors defined by the JMX Remote API specification are
- "RMI Connector": This standard Remote Method Invocation (RMI) protocol must be supported by every implementation that conforms to the JMX Remote API standard.
- "Generic Connector": The JMX Remote API standard also defines an optional protocol based directly on TCP sockets, called the JMX Messaging Protocol (JMXMP). An implementation of the standard can omit the JMXMP connector, but must not omit the RMI connector. The Java SE platform does not include the optional JMXMP connector.
- "User-Defined Protocols": A connector can also implement a protocol that is not defined in the JMX technology.
If you look at the above architecture a connector provides full remote access to the MBeanServer API using various communication frameworks (RMI, IIOP, JMS, WS-* …
), while an adaptor adapts the API to another protocol (SNMP, …)
or to Web-based GUI (HTML/HTTP, WML/HTTP, …).
Generally we use JMX connectors to connect to the MBean server but we can chose other connectors as well.
To sum up JMX is an java technology and RMI is for Remote Method Invocation a Java specific implementation of a Remote Procedure Call interface which can be used in the JMX to communicated remotely.