J4ONet Information Viewpoint Analysis

Service Scope:

Name Space:



    JMX services should be "scoped," meaning that they should live in a defined domain or neighborhood. Each JMX agent should live in a name space. This name space should hierarchical, similar to URL name space. Search for MBean should be able to be restricted to name space. For example, JMX agents may live in the following name space:

    • com.company.cluster1.monitoring

    • com.company.cluster2.monitoring

    • com.company

    • org.sourceforge.public



    com.company.cluster1.monitoring and com.company.cluster2.monitoring would be children name spaces of com.company. A search for an MBean of class DataBaseMonitor in the name space of com.company would find com.company.cluster1.monitoring:OurDomain:name=DataBaseMonitor,seq=1 com.company.cluster2.monitoring:OurDomain:name=DataBaseMonitor,seq=1.



Range:



    A search should have a concept of a range.



    A client should be able to limit the range of a search. For example, only find MBeans in the com.company name space that live in the local JMX agent or peer network.

Range:



    A JMX Agent needs to have a type. One agent might be used to control web servers, another to run a cluster controller, etc. Each agent should have a type, and you should be able to search for agents on that basis.



MBean Attributes:



    You can query a JMX agent for MBeans according to the JMX 1.1 specification. You can limit your search by MBean attributes and domain. That should hold true for all resolvers.



MBean Class:



    Just as a client can search for MBeans by attributes, it should be able to search for MBeans by class. This class should be determined as the class that a proxy would implement for the MBean.



Transparency:

JMX Service Token:



    The location of a MBean or agent should be contained in some sort of token object that will provide location transparency and hide implementation details. The resolvers should use this token to identify unique MBeans and agents. It should hide implementation details from the client. It should expose all the scope information.



JMX Proxy:



    The system should use proxy objects to communicate across MBeans to provide location transparency. These MBeans may be hosted locally or remotely, accessed by various protocol adaptors. The JMX proxy infrastructure should hide the location and access method of the MBean.