Skip to main content
Skip table of contents

Distributed ROAD Cluster

Introduction

A "ROAD cluster" is a group of ROAD hosts, which share one database. Each host might have different resources and work might be distributed over them for load balancing.

See General Architecture for an overview.

ROAD clients usually connect to one of the cluster's hosts and refer to jobs and resources on that machine. It's also possible for a client to connect to several hosts as required, but usually the client relies on the connected host to forward requests directly to other ROAD hosts as required.

Some clients might connect to only one host, but handle with data or resources which are located on or referring to different hosts.

Here we provide some information which a client developer should know about this topic.

Available Hosts

All hosts sharing one database are connected and build a ROAD cluster. To get to know which hosts there are and about their current state, a client can query for them. See api/hosts.

Each ROAD Service instance updates this information in the database periodically, so clients can assume if they are currently running.

This list is also considered when relaying REST or socket requests. Relaying by the ROAD Service is only targeted to hosts which are registered in the list of available hosts.

Relaying REST Requests

All REST request which only refer to the (common) database will be processed in the same way by any ROAD host in this cluster, so a client can send the request to the host of its choice.

To make this possible, http relaying is implemented in the ROAD Service. In some cases this is done by an explicit REST parameter "host", in others this is managed by the Service depending on the context.

See API Relaying inside the ROAD Cluster for detailed documentation of relaying on different API interfaces.

Relaying Subscriptions and Notifications

Most subscriptions can be relayed by passing a RelayHost parameter. This leads the addressed host to relaying to the other host and routing the notifications in the opposite direction back to the requesting client.

This can be useful if a client has no direct network connection to the target host or might decrease network load because the host-to-host relay connection bundles identical subscriptions and notifications for several clients.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.