Previous Topic: PS8 - Scalable Port SwitchNext Topic: URLSW - URL Port Switch


RPL - Event Replicator

Latest Version: 2.0.2-1

RPL: Event Replicator

At a Glance

Catalog

System

Category

Switches

User volumes

no

Min. memory

96M

OS

Linux

Constraints

no

Functional Overview

RPL is a replicator for events. It replicates HTTP requests received on its input terminal to all its output terminals.

RPL sends any headers and documents received with the request to the outputs. RPL ignores the responses from the output requests, including possible failures to send the request. RPL always returns SUCCESS for recognized HTTP requests on its input, without waiting for any of the outputs to respond. For requests that require a document to be returned, RPL returns an empty document.

RPL is intended for distributing fire-and-forget asynchronous notifications. (Future versions of RPL may have additional parameterization that modifies its behavior, including aggregating the responses from outputs and returning them on the input).

RPL can tolerate, and indeed expects under normal circumstances, any of its outputs being unconnected or non-responsive. Appliances connected to RPL's outputs may be stopped, on standby or non-responsive, without this affecting the operation and performance of RPL.

RPL can be cascaded by connecting other RPL instances to one or more of RPL's outputs.

Boundary

Resources

Resource

Minimum

Maximum

Default

CPU

0.05

4

0.05

Memory

96 MB

128 MB

96 MB

Bandwidth

1 Mbps

2 Gbps

100 Mbps

Note: The amount of memory given to the appliance does not affect its throughput or performance significantly. The memory only controls the amount of request data that can be concurrently submitted through RPL.

Terminals

name

dir

prot.

description

in

in

HTTP

Request input. HTTP requests received on this input are replicated and sent to all of the connected RPL outputs. RPL completes the request with success and, where appropriate, returns an empty document, regardless of the results of forwarded requests and without waiting for any responses from the outputs.

out1-out8

out

HTTP

Replication outputs. Requests received on the input terminal are replicated to each of the connected outputs; the results are ignored. Any and all of these outputs can be left unconnected; any of the outputs may be connected to appliances that are not started and/or non-responsive.

mon

out

CCE

Sends performance and resource usage statistics. This terminal may be left unconnected if it is not used.

Error Messages

The following messages may appear in either the appliance log file or the system log of the grid controller when the appliance fails to start:

Failed to start http daemon

Typical Usage

The following diagram shows a typical usage of the RPL appliance in a clustered web application:

A typical usage of the RPL appliance in a clustered web application

Non-blocking requests can be made on in_rpl and are replicated to each running web server.

Notes

Open source and 3rd party software used inside of the appliance

RPL uses the following 3rd party open source packages in addition to the 3rd party open source packages used by its base class LUX5.

Software

Version

Modified

License

Notes

perl-Compress-Zlib

1.42-1

No

Artistic

homepage on CPAN

perl-HTML-Parser

3.55-1

No

Artistic

N/A

perl-HTML-Tagset

3.10-2.1.1

No

GPLv2

N/A

perl-URI

1.35-3

No

Artistic

N/A

perl-libwww-perl

5.805-1.1.1

No

Artistic

N/A