- TIBCO SmartSockets provides client-server (TipcSrv*) as well as peer-to-peer (TipcConn*) communications models.
- RTserver is a standard TIBCO SmartSockets process used to implement the powerful publish-subscribe communications services, which allows location transparency of your clients.
- An RTclient connects to a single RTserver. An RTserver can connect to other RTservers. Messages are dynamically routed from an RTclient to other RTclients through one or more RTservers using a shortest path algorithm.
- RTserver can be started manually using the
rtserver
shell script (or rtserver64
script for platforms supporting both 32-bit and 64-bit). RTserver can be stopped manually using the rtserver
shell script with the -stop
command line argument. By default, RTserver is not started automatically by RTclient. This behavior can be easily modified by adding or changing the prefix of the logical connection name.
- RTserver runs as a background (detached) process.
- By default, a client program tries to connect to RTserver on its same node. A client program can connect to an RTserver on another node by setting the Server_Names option.
- The Project option is used by RTclients to prevent processes in another group from communicating with them.
- TIBCO SmartSockets has a large utility library whose function names all start with Tut. You used the TutOption routines to set the Project option in your sample program.
- Subjects are logical addresses that are set as the destination property of a message. Subjects are used by RTserver to dynamically route messages to all RTclients that have subscribed to that subject. This allows a single message to be delivered to multiple RTclients with a single operation.
- Subjects are the fundamental unit used by TIBCO SmartSockets to implement its publish-subscribe services.
- Subject names can be specified in a hierarchical structure to any number of levels. For example,
/company/software/tibco
.
- Rather than deliver a message to all RTclients that have subscribed to a subject, a message can be delivered to only one of a set of RTclients using load balancing.
- Load balancing can be set on a per-message or per-message type basis.
- Wildcards ("
*"
and "..."
) can be used when subscribing or publishing to a subject.
- A program can connect to an RTserver running on the same node or connect to an RTserver running remotely by setting its Server_Names option.
- Always be sure to call TipcSrvDestroy before your program exits to disconnect from RTserver and flush any messages still in the buffer.