dispatcher: Dispatcher

View source: R/dispatcher.R

dispatcherR Documentation

Dispatcher

Description

Dispatches tasks from a host to daemons for processing, using FIFO scheduling, queuing tasks as required. Daemon / dispatcher settings may be controlled by daemons() and this function should not need to be invoked directly.

Usage

dispatcher(host, url = NULL, n = NULL, ..., tls = NULL, pass = NULL, rs = NULL)

Arguments

host

the character host URL to dial (where tasks are sent from), including the port to connect to e.g. 'tcp://hostname:5555' or 'tcp://10.75.32.70:5555'.

url

(optional) the character URL dispatcher should listen at (and daemons should dial in to), including the port to connect to e.g. 'tcp://hostname:5555' or 'tcp://10.75.32.70:5555'. Specify 'tls+tcp://' to use secure TLS connections.

n

(optional) if specified, the integer number of daemons to launch. In this case, a local url is automatically generated.

...

(optional) additional arguments passed through to daemon(). These include asyncdial, autoexit, and cleanup.

tls

[default NULL] (required for secure TLS connections) either the character path to a file containing the PEM-encoded TLS certificate and associated private key (may contain additional certificates leading to a validation chain, with the TLS certificate first), or a length 2 character vector comprising [i] the TLS certificate (optionally certificate chain) and [ii] the associated private key.

pass

[default NULL] (required only if the private key supplied to tls is encrypted with a password) For security, should be provided through a function that returns this value, rather than directly.

rs

[default NULL] the initial value of .Random.seed. This is set automatically using L'Ecuyer-CMRG RNG streams generated by the host process and should not be independently supplied.

Details

The network topology is such that a dispatcher acts as a gateway between the host and daemons, ensuring that tasks received from the host are dispatched on a FIFO basis for processing. Tasks are queued at the dispatcher to ensure tasks are only sent to daemons that can begin immediate execution of the task.

Value

Invisible NULL.


mirai documentation built on April 4, 2025, 12:27 a.m.