The MBean server is a registry for JMX manageable resources, which it exposes to management requests. It provides a protocol-independent and information model independent framework with services for manipulating JMX manageable resources.
If you choose to register a resource's MBean with the MBean server, it becomes visible to management applications and exposed to management requests. The MBean server makes no distinction between the types of MBeans. Standard, dynamic, model and open MBeans are managed in exactly the same manner.
You can register objects in the MBean server through:
The other objects in the agent application itself
A remote management application (through a connector or a protocol adaptor)
The MBean server responds to the following management requests on registered MBeans:
Listing and filtering MBeans by their symbolic name
Discovering and publicizing the management interface of MBeans
Accessing MBean attributes for reading and writing
Invoking operations defined in the management interface of MBeans
Registering and unregistering listeners for MBean notifications
The MBean server never provides the programmatic reference of its MBeans. It treats an MBean as an abstraction of a management entity, not as a programmatic object. All management requests are handled by the MBean server, which dispatches them to the appropriate MBean, thus ensuring the coherence in an agent.
An MBean is identified by a unique symbolic name, called its object name. The object name can be assigned either by the entity registering the MBean or by the MBean itself, if its implementation has been designed to provide one. Managers give this object name to designate the target of their management requests.
It is possible to have multiple MBean servers within the same Java virtual machine, each managing a set of resources.