xmlBlaster 2.1.0 API

javaclients
Class Latency

java.lang.Object
  extended by javaclients.Latency
All Implemented Interfaces:
I_Callback

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)
          Try
 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

startTime

private long startTime

messageArrived

private boolean messageArrived

log

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

Latency

public Latency(Global glob)
Method Detail

update

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
Parameters:
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:
I_XmlBlasterAccess

main

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


xmlBlaster 2.1.0 API

Copyright © 1999-2011 The xmlBlaster.org contributers.