Overview
Jolokia is an HTTP/JSON bridge for remote JMX access. It is an alternative to standard JSR 160 connectors, using an agent based approach. The client communicates with the agent over HTTP (GET or POST) with the request and response payload represented in JSON. It transparently bridges to the JMX world, talking to clients on the frontend via a REST-like protocol and to a JMX MBeanServer on the backend. More …
JMX Proxy
Jolokia can operate in an agentless mode where the only requirement on the target platform is the standard JSR-160 export of its MBeanServer. A proxy listens on the front side for Jolokia requests via JSON/HTTP and propagates these to the target server through remote JSR-160 JMX calls. Bulk requests get dispatched into multiple JSR-160 requests on the proxy transparently. More …
Fast
Jolokia before version 2.1.0 uses the super fast JSON serialization library
json-simple
for parsing requests and creating responses.
With version 2.1.0 we provide our own JSON library
that uses a lexer genreated by JFlex.
Although the binary protocols (JRMP or IIOP) used by the standard JSR-160 connectors are naturally much more compact than a textual representation like JSON and although they have some performance advantages, Jolokia balances this for many use cases with advanced features like bulk requests and low startup times. More …
Firewall friendly
The usage of HTTP as transport protocol makes Jolokia a perfect choice for firewall setups. It can seemlessly operate over multiple HTTP-Proxy hops. More …
Bulk-Requests
Jolokia can process many JMX requests within a single
network roundtrip. A HTTP POST request can encapsulate
multiple Jolokia requests in its JSON payload which gets
dispatched on the agent side. These bulk requests can
increase performance drastically especially for
monitoring use cases where many different JMX parameters
are observed at once. The Nagios plugin
check_jmx4perl
uses bulk requests for its
multi check feature. More …
Secure
In addition to standard HTTP security Jolokia supports a custom policy with fine grained restrictions based on multiple properties like the client’s IP address or subnet, the MBean names and their attributes and operations. The policy is defined in an XML format with support for allow/deny sections and wildcards. More …
Simple
It’s simple. The agent is easy to install, often easier than setting up a standard JSR-160 RMI connector. Jolokia agents can be accessed with a Web browser for simple request. A custom, REST-like URL encoding enables easy access from any client platform. The client libraries' API are designed for a simple, typeless usage, using a request-response paradigma. They are not harder to use than any other HTTP library. More …
Polyglot
Thanks to the widely adopted standards HTTP and JSON, Jolokia is able to effortlessly bridge the Java centric technology JMX to non-Java platforms. Java, Perl and JavaScript client libraries are available. More …