Object Overview
This object defines a persistent network connection to an ORMQ Provider running locally in the same process / memory space as the client. ORMQ shared memory stream connections are generally utilized to connect to local ORMQ Providers running within the same
AlchemyPoint Server process instance. These connections are useful for performing fast ORMQ messaging within the scope of a single ORMQ Provider.
ORMQDestinations and ORMQSubscriptions may be embedded within this Connection object to both create message queues on the connected Provider, and subscribe to already-created message queues.
Example Object Definitions
... directly within the top-level
ServerConfiguration object:
Minimal Configuration:
<ORMQMemConnection name=""ORMQConnection1"
portNum="4005"
username="aimuser1"
password="secret123"/>
Overview:
Local "shared memory stream" connection to an ORMQ Provider running within the same
AlchemyPoint Server process instance, using the shared memory port "4005". This object utilizes the login "user123" and password "secret123" when logging into the ORMQ Provider.
Complex Configuration (all possible attributes shown):
<ORMQMemConnection name=""ORMQConnection1" tags="aim connection"
description="example AIM instant messenger connection"
portNum="4005"
username="aimuser1"
password="secret123"/>
Overview:
Local "shared memory stream" connection to an ORMQ Provider running within the same
AlchemyPoint Server process instance, using the shared memory port "4005". This object utilizes the login "user123" and password "secret123" when logging into the ORMQ Provider.
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:
- portNum - (usage: required): The local shared memory stream port that should be utilized to connect to the ORMQ Provider.
- username - (usage: required): The username to utilize when logging into the connected ORMQ Provider.
- password - (usage: required): The password to utilize when logging into the connected ORMQ Provider.
Supported Child Configuration Elements
ORMQ:
- ORMQDestination - A named queue residing on the connected ORMQProvider. These queues may be written to (via a DispatcherSource? , InputConnector or any of the ProtocolListeners), or subscribed to. ORMQ queues support a variety of delivery and reliability options, to operate successfully in a variety of messaging scenarios.
Connector Facades:
- ORMQInputConnector - Accesses named queue destinations on an ORMQ Provider in a polling fashion, checking for new messages on a regular interval. This object differs from an ORMQSubscription in that messages are only retrieved from the queue on an interval, versus being processed as soon as they are available.
- ORMQOutputConnector - Posts messages to an ORMQ named queue destination using rate limiting and pipelining. 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.