client | the part of the software doing the connect system-call |
server | the part of the software doing the accept system-call (e.g. service) |
- every new client-parent-context start a new server and creating a server-parent-context
- client: (C, C++, C#, Java, Python, Tcl, Perl, VB.NET)
- server: (C, C++, C#, Java, Python, Tcl, Perl, VB.NET)
- every deletion of the client-parent-context stop the previous started server
- every client application is able to connect to multiple server, there is a 1:N relationship between client and server.
In local mode the client start and connect to the server using a PIPE: - in remote mode the client connect to the server is using --tcp or --uds for communication setup:
client --tcp --hots REMOTE_HOST --port REMOTE_PORT ... or
client --uds --file MYFILE ...
- the client gets all the error/warning/info messages from the server
In general the server is serving services and is started by the client:
(this is called the
local mode and is the DEFAULT)
or as a standalone:
- option --tcp or --uds together with --fork, --thread or --spawn
(this is called the
remote mode)
and is defined if the IServerSetup interface is available (C, C++, C#, Java, Python, Tcl, Perl, VB.NET)
In local mode the client is using everything after the first @ command-line argument as server:
but only if the client is using the command-line arguments to configure the MqLinkCreate call:
In remote mode the server is started as standalone with tcp sockets:
server --fork --tcp --port 7777
or uds sockets:
server --fork --uds --file /tmp/myservice_file