This transport handler allows to send and receive messages using the TCP sockets with the easily customizable ZeroMQ framework (see http://www.zeromq.com/). Information on how to use ZeroMQ and about parameter information can be found at http://zguide.zeromq.org/ . In this implementation the pure Java version of ZeroMQ is used: https://github.com/zeromq/jeromq .
ZeroMQ is licensed under LGPL (see: license/lgpl-3.0.txt) and can only be used or distributed as specified in the LGPL license.
Options
host:
The IP of the server (own IP if publisher)writeport
: The port on which data is send to clientsreadport
: The port on which data sent by clients is receiveddelayofmsg
: The number of messages which are hold back until all delayed messages are sent in one stream elementthreads
: The number of threads used by ZeroMQ to send/receive dataparams
: parameters that can be set using pull publishingtimeout
: The number of unsuccessfully received/sent messages before connection is timed out
Example
/// Send/Receive via publish/subscribe sender = SENDER({ id='sender', transport='ZeroMQ', wrapper='GenericPush', protocol='SVM', datahandler='Tuple', SINK="SENDER", options=[ ['HOST','192.168.1.101'], ['READPORT','5554'], ['WRITEPORT','5555'], ['DELAYOFMSG','1'], ['THREADS','1'], ['ByteOrder', 'LittleEndian'] ] },nexmark:Person ) /// Send/Receive via pull sender = SENDER({ id='sender', transport='ZeroMQ', wrapper='GenericPull', protocol='SVM', datahandler='Tuple', SINK="SENDER", options=[ ['HOST','192.168.1.101'], ['READPORT','5554'], ['WRITEPORT','5555'], ['DELAYOFMSG','1'], ['THREADS','1'], ['ByteOrder', 'LittleEndian'] ] },nexmark:Person )