r2 - 09 May 2007 - 18:46:59 - Main.eturnerYou are here: TWiki >  Main Web > ServerConfiguration > ORMQObjects > ORMQOutputConnector

Object Overview

The ORMQ output connector object allows AlchemyPoint Server to post messages to an ORMQ named queue destination using rate limiting and pipelining options. This object is useful when it is necessary to limit the speed at which messages are posted to an ORMQ queue, as ORMQDestination does not inherently support any sort of rate / message limiting capabilities.

This object utilizes AlchemyPoint's underlying Connector framework and thus supports a variety of rate limiting and concurrency options.

Example Object Definitions

... directly within the top-level ServerConfiguration object, an ORMQProvider, or an ORMQConnection? :

Minimal Configuration:

<ORMQOutputConnector name="OrmqOut1"
                     queue="public.queues.1"/>

Overview:

The above example is an ORMQ output connector that accepts 'raw' ORMQMessages? from a ORMQInputConnector and ORMQSubscription, or opaque data from OpaqueMessages? and KeyValueMessages? . Received message data is posted to the named ORMQ queue destination "public.queues.1".


Complex Configuration (all possible attributes shown):

<ORMQOutputConnector name="OrmqOut1" tags="connector ormq output"
                     description="example ORMQ output connector"
                     provider="testProvider1"
                     queue="public.queues.1"
                     rateLimitDuration="60"
                     rateLimitPipelineMax="1"
                     messageRateLimit="5"/>

Overview:

The above example is an ORMQ output connector that accepts 'raw' ORMQMessages? from a ORMQInputConnector and ORMQSubscription, or opaque data from OpaqueMessages? and KeyValueMessages? . Received message data is posted to the named ORMQ queue destination "public.queues.1", on the Provider named "testProvider1". This Connector sends a maximum of 5 messages to the queue destination every 60 seconds.

Supported Attributes

General Attributes:

  • name - (usage: required): Public name of the configuration object. This name must be globally-unique across the entire AlchemyPoint ServerConfiguration definition.

  • description - (usage: optional): Textual description of the configuration object.

  • tags - (usage: optional): Space-delimited list of one or more tags used to describe the configuration object.


Object Attributes:

  • queue - (usage: required): The name of the ORMQ queue destination to which this Connector should send messages. The named queue destination must have already been defined on the Provider using an ORMQDestination object.

  • provider - (usage: mixed): The published name of the ORMQ Provider instance that this Connector should interact with. This corresponds to the 'name' attribute of an ORMQProvider within the same AlchemyPoint system configuration.


Rate Limit Attributes:

  • rateLimitDuration - (usage: optional, default: "0"): The duration (in seconds) utilized by the 'messageRateLimit' parameter. A value of "0" disables all rate limits for this Connector.

  • messageRateLimit - (usage: optional): The number of ORMQ messages that may be sent by this Connector within the 'rateLimitDuration' period.

  • rateLimitPipelineMax - (usage: optional): The number of ORMQ messages that may be 'pipelined' by this Connector (saved in a single 'bunch' without any messageRateLimit between each send). This setting is useful for specifying the number of files that may be saved in rapid sequence.
    • The 'rateLimitPipelineMax' setting has an upper bound of 'messageRateLimit' messages. The maximum allowable value for this pipeline setting is the Connector's 'messageRateLimit' setting.

Supported Child Configuration Elements

None.

Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r2 < r1 | More topic actions

tip TWiki Tip of the Day
Creating a Table of Contents
The TWikiVariables %TOC% will automatically create a table of contents for a topic based on the headers ... Read on Read more

 
Powered by TWiki
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback