rspserver
—
RSerPool Server (PE) for multiple example services
rspserver |
[-local=address:port,address,... ]
[-asapannounce=address:port ]
[-identifier=PE_identifier ]
[-policy=policy_specification ]
[-poolhandle=pool_handle ]
[-quiet ]
[-registrar=address:port ]
[-rereginterval=milliseconds ]
[-runtime=milliseconds ]
[-uptime=seconds ]
[-downtime=seconds ]
[-logcolor=on|off ]
[-logappend=filename ]
[-logfile=filename ]
[-loglevel=0-9 ]
[-cspserver=address:port ]
[-cspinterval=milliseconds ] |
rspserver |
[-calcapp ]
[-capcapacity=calculations_per_second ]
[-capcleanshutdownprobability=probability ]
[-capcookiemaxcalculations=calculations ]
[-capcookiemaxtime=seconds ]
[-capkeepalivetransmissioninterval=milliseconds ]
[-capkeepalivetimeoutinterval=milliseconds ]
[-capmaxjobs=max_jobs ]
[-capobject=name ]
[-capscalar=scalae_file ]
[-capvector=vector_file ] |
rspserver |
[-chargen ]
[-chargenmaxthreads=threads ] |
rspserver |
[-fractal ]
[-fgpcookiemaxpackets=messages ]
[-fgpcookiemaxtime=milliseconds ]
[-fgpfailureafter=messages ]
[-fgpmaxthreads=threads ]
[-fgptestmode ]
[-fgptransmittimeout=milliseconds ] |
rspserver |
[-pingpong ]
[-pppfailureafter=messages ]
[-pppmaxthreads=threads ] |
rspserver |
[-scripting ]
[-sskeyring=keyring ]
[-sstrustdb=trust_db ]
[-sscachedirectory=directory ]
[-sscachemaxentries=entries ]
[-sscachemaxsize=kibibytes ]
[-sskeepaliveinterval=milliseconds ]
[-sskeepalivetimeout=milliseconds ]
[-sskeeptempdirs ]
[-ssmaxthreads=threads ]
[-sstransmittimeout=milliseconds ] |
rspserver
is an example Reliable Server Pooling
(RSerPool) pool element (PE) that provides multiple services. Upon startup,
one service has to be selected by the command-line parameters. To start
multiple services, run multiple instances. rspserver
provides the following services:
- CalcApp
- Calculation application model for performance tests. See
https://duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/Derivate-16326/Dre2006_final.pdf
for more information.
- CharGen
- Sending as much character data as possible.
- Daytime
- Sending back current time of day.
- Discard
- Discarding incoming data.
- Echo
- Echoing back incoming data.
- Fractal
- Fractal generator with cookie-based failover.
- PingPong
- Simple request-response example using cookies for failover.
- Scripting
- Remote execution of scripts with upload/download of input/output data.
Could for example be used for distributing simulation runs. Take care of
security when using this service!
The following options are available:
- Common Pool Element Parameters:
-
-local=address:port,address,...
- Sets the local endpoint address(es).
-asapannounce=address:port|auto|off
- Sets the multicast address and port the ASAP instance listens for ASAP
Server Announces on.
-identifier=PE_identifier
- Sets a fixed PE identifier. Handle with care!
-policy=policy_specification
- Sets the pool policy and its parameters (default is Round Robin).
Supported policy specifications:
- RoundRobin (default policy)
-
- WeightedRoundRobin:weight
-
- Random
-
- WeightedRandom:weight
-
- LeastUsed
-
- LeastUsedDegradation:increment
-
- PriorityLeastUsed:increment
-
- LeastUsedDPF:dpf_value
-
- Priority:priority
-
- ...
-
-poolhandle=pool_handle
- Sets the PH to a non-default value; otherwise, the default setting is
the service-specific default.
-quiet
- Do not print startup and shutdown messages.
-rereginterval=milliseconds
- Sets the PE's re-registration interval.
-runtime=seconds
- After the configured number of seconds, the service is shut down.
Floating-point values (e.g. 30.125) are possible.
-uptime=seconds
- After negative exponential randomized uptime, the PE service goes down
for a configured downtime. After that, it comes up again. This option
can be used for testing the failure handling procedures.
-downtime=seconds
- After negative exponential randomized downtime, the PE service comes
up again. This option can be used for testing the failure handling
procedures.
- Logging Parameters:
-
-logappend=filename
- Write logging output to a file (default is stdout); output will be
appended to given file.
-logcolor=on|off
- Turns ANSI colorization of the logging output on or off.
-logfile=filename
- Write logging output to a file (default is stdout); given file will be
overwritten.
-loglevel=0-9
- Sets the logging verbosity from 0 (none) to 9 (very verbose). It is
recommended to use at least a value of 2 to see possibly important
error messages and warnings.
- ASAP Protocol Parameters:
-
-registrar=address:port
- Adds a static PR entry into the Registrar Table. It is possible to add
multiple entries.
-registrarannouncetimeout=milliseconds
- Sets the timeout for ASAP announces via multicast.
-registrarconnecttimeout=milliseconds
- Sets the timeout for ASAP connection establishment.
-registrarconnectmaxtrials=trials
- Sets the maximum number of ASAP connection establishment trials.
-registrarrequesttimeout=milliseconds
- Sets the timeout for ASAP requests.
-registrarresponsetimeout=milliseconds
- Sets the timeout for waiting to receive ASAP responses.
-registrarrequestmaxtrials=trials
- Sets the maximum number of ASAP request trials.
- Component Status Protocol (CSP) Parameters:
-
-cspinterval=milliseconds
- Sets the interval for the CSP status updates in milliseconds. By
default, the content of the environment variable CSP_INTERVAL is used.
If not defined, no CSP status reports will be sent.
-cspserver=address:port
- Sets the address of a CSP monitor server. By default, the content of
the environment variable CSP_SERVER is used. If not defined, no CSP
status reports will be sent.
- Service Parameters:
-
-calcapp
- Starts the CalcApp service.
-capcapacity=calculations_per_second
- Sets the service capacity in calculations per second.
-capcleanshutdownprobability=probability
- Sets the probability for sending state cookies to all sessions
before shutting down.
-capcookiemaxcalculations=calculations
- Sets the cookie interval in calculations.
-capcookiemaxtime=seconds
- Sets the cookie interval in seconds.
-capkeepalivetransmissioninterval=milliseconds
- Sets the keep-alive transmission interval in milliseconds.
-capkeepalivetimeoutinterval=milliseconds
- Sets the keep-alive timeout in milliseconds.
-capmaxjobs=max_jobs
- Sets the an upper limit for the number of simultaneous CalcApp
requests.
-capobject=name
- Sets the object name for scalar hierarchy.
-capscalar=scalar_file
- Sets the name of vector scalar file.
-capvector=vector_file
- Sets the name of vector output file.
-chargen
- Starts the CharGen service.
-chargenmaxthreads=threads
- Sets an upper limit for the number of simultaneous CharGen
sessions.
-daytime
- Starts the Daytime service.
-discard
- Starts the Discard service.
-echo
- Starts the Echo service.
-fractal
- Starts the Fractal Generator service.
-fgpcookiemaxpackets=messages
- Send cookie after given number of Data messages
-fgpcookiemaxtime=milliseconds
- Send cookie after given number of milliseconds.
-fgpfailureafter=messages
- After the set number of data packets, the server will terminate
the connection in order to test failovers.
-fgpmaxthreads=threads
- Sets an upper limit for the number of simultaneous Fractal
Generator sessions.
-fgptestmode
- Generate simple test pattern instead of calculating a fractal
graphics (useful to conserve CPU power when debugging).
-fgptransmittimeout=milliseconds
- Sets transmit timeout in milliseconds.
-pingpong
- Starts the PingPong service.
-pppfailureafter=messages
- After the set number of messages, the server will terminate the
connection in order to test failovers.
-pppmaxthreads=threads
- Sets an upper limit for the number of simultaneous PingPong
sessions.
-scripting
- Starts the Scripting service.
-sskeyring=keyring
- The location of a GnuPG keyring to check the work packages and
environments against. If a keyring is specified, only files that
pass the validation are accepted.
-sscachedirectory=directory
- Sets the environment cache directory.
-sscachemaxentries=entries
- Sets the maximum number of environment cache entries.
-sscachemaxsize=kibibytes
- Sets the maximum size of the environment cache in kibibytes.
-sskeepaliveinterval=milliseconds
- Sets the keep-alive interval in milliseconds.
-sskeepalivetimeout=milliseconds
- Sets the keep-alive timeout in milliseconds.
-sskeeptempdirs
- Turns on keeping all temporary files for debugging. Handle with
care!
-ssmaxthreads=threads
- Sets an upper limit for the number of simultaneous sessions.
-sstransmittimeout=milliseconds
- Sets the transmission timeout in milliseconds.
rspserver
uses the environment variables CSP_SERVER and
CSP_INTERVAL to define a CSP server to send reports to in the specified
interval.
If loglevel>0, log messages will be printed to stdout or into a specified log
file.
For a detailed introduction to RSerPool, see:
https://duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/Derivate-16326/Dre2006_final.pdf
Thomas Dreibholz's RSerPool Page:
https://www.uni-due.de/~be0001/rserpool/