xmlBlaster 2.2.0 API

Class Latency

  extended by javaclients.Latency
All Implemented Interfaces:

public class Latency
extends java.lang.Object
implements I_Callback

Measure the brutto roundtrip latency of a message publish and update.

Invoke examples (put xmlBlaster.jar in your CLASSPATH):
On localhost:

   java org.xmlBlaster.Main
   java javaclients.Latency -numSend 100

Over the internet with CORBA:
   java javaclients.Latency -numSend 100 -bootstrapHostname server.xmlBlaster.org
  or if you have a dynamic IP:
   java javaclients.Latency -numSend 100 -bootstrapHostname server.xmlBlaster.org -dispatch/callback/plugin/ior/hostname 

Over the internet with XmlRpc:
   java javaclients.Latency -numSend 100 -dispatch/connection/protocol XMLRPC -dispatch/connection/plugin/xmlrpc/hostname server.xmlBlaster.org -dispatch/callback/plugin/xmlrpc/hostname 

Results, for one round trip including publish -> processing in xmlBlaster -> update -> parsing in client (600 MHz AMD Linux):

Field Summary
private static java.util.logging.Logger log
private  boolean messageArrived
private  long startTime
Constructor Summary
Latency(Global glob)
Method Summary
static void main(java.lang.String[] args)
 java.lang.String update(java.lang.String cbSessionId, UpdateKey updateKey, byte[] content, UpdateQos updateQos)
          This is the callback method invoked from I_XmlBlasterAccess informing the client in an asynchronous mode about a new message.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Detail


private long startTime


private boolean messageArrived


private static java.util.logging.Logger log
Constructor Detail


public Latency(Global glob)
Method Detail


public java.lang.String update(java.lang.String cbSessionId,
                               UpdateKey updateKey,
                               byte[] content,
                               UpdateQos updateQos)
Description copied from interface: I_Callback
This is the callback method invoked from I_XmlBlasterAccess informing the client in an asynchronous mode about a new message.

So you should implement in your client code the I_Callback interface - suppling the update() method where you can do with the message whatever you want.

The raw protocol driver specific update() method (e.g. CORBA-BlasterCallback.update()) is unpacked and for each arrived message this update is called.

Specified by:
update in interface I_Callback
cbSessionId - The session ID specified by the client which registered the callback. You can specify a cbSessionId during connection (with ConnectQos) and this is bounced back here so you can authenticate the message.
updateKey - The arrived key containing the topic name
content - The arrived message content. This is your payload.
See Also:


public static void main(java.lang.String[] args)
   java javaclients.Latency -help
for usage help

xmlBlaster 2.2.0 API

Copyright © 1999-2014 The xmlBlaster.org contributers.