diff --git a/doc/user-guide/zaqar-api-ref/os-zaqar-apiRef.xml b/doc/user-guide/zaqar-api-ref/os-zaqar-apiRef.xml
index 79cae5589..3c41ba629 100644
--- a/doc/user-guide/zaqar-api-ref/os-zaqar-apiRef.xml
+++ b/doc/user-guide/zaqar-api-ref/os-zaqar-apiRef.xml
@@ -133,15 +133,18 @@
following:
- producer-consumer
+ Task distribution
- publish-subscribe
+ Event broadcasting
+
+
+ Point-to-point messaging
-
- Producer-Consumer
- The producer-consumer pattern has the following
+
+ Task distribution
+ The task distribution pattern has the following
characteristics:
@@ -169,27 +172,24 @@
This pattern is ideal for dispatching jobs to multiple
processors.
-
- Publish-Subscribe
- Characteristics of the Publish-Subscribe pattern
+
+ Event broadcasting
+ Characteristics of the event broadcasting pattern
are:
- The publisher sends a message to a queue.
+ The publisher sends messages to a queue.
- All workers (or subscribers) listen to the messages
+ Multiple observers get the messages
in the queue.
- Workers do not claim a message.
-
-
- Multiple workers can take action on a
+ Multiple observers take action on each
message.
- Workers can send a marker or cursor to skip messages
+ Observers send a marker to skip messages
already seen.
@@ -197,7 +197,38 @@
This pattern is ideal for notification of events to
- multiple workers at once.
+ multiple observers at once.
+
+
+ Point-to-point messaging
+ Characteristics of the point-to-point messaging pattern
+ are:
+
+
+ The publisher sends messages to a queue.
+
+
+ The consumer gets the messages in the queue.
+
+
+ The consumer can reply with the result of processing
+ a message by sending another message to the same queue
+ (queues are duplex by default).
+
+
+ The publisher gets replies from the queue.
+
+
+ The consumer sends a marker to skip messages
+ already seen.
+
+
+ TTL eventually deletes messages.
+
+
+ This pattern is ideal for communicating with a specific
+ client, especially when a reply is desired from that
+ client.
@@ -266,15 +297,15 @@
Publish events to any number of subscribers
- (publish-subscribe)
+ (event broadcasting)
- Send commands to one or more agents (point-to-point or
- publish-subscribe)
+ Send commands to one or more agents (point-to-point
+ messaging or event broadcasting)
Request an action or get information from a Remote
- Procedure Call (RPC) agent
+ Procedure Call (RPC) agent (point-to-point messaging)
diff --git a/doc/user-guide/zaqar-get-started/os-zaqar-apiGettingStarted.xml b/doc/user-guide/zaqar-get-started/os-zaqar-apiGettingStarted.xml
index 9018b62cb..58a1df5ae 100644
--- a/doc/user-guide/zaqar-get-started/os-zaqar-apiGettingStarted.xml
+++ b/doc/user-guide/zaqar-get-started/os-zaqar-apiGettingStarted.xml
@@ -154,80 +154,109 @@
that messages are handled in a First In, First Out (FIFO) order.
Messaging Patterns
- Message Queuing supports a variety of messaging patterns including the
- following:
+ The Message Queuing API supports a variety of
+ messaging patterns including the following:
- producer-consumer
+ Task distribution
- publish-subscribe
+ Event broadcasting
+
+
+ Point-to-point messaging
-
- Producer-Consumer
- The producer-consumer pattern has the
- following characteristics:
-
-
- A producer is programmed to send
- messages to a queue.
-
-
- Multiple workers (or consumers) are
- programmed to monitor a queue.
-
-
- Only one worker can claim a message
- so that no other worker can claim the
- message and duplicate the work.
-
-
- The worker must delete the message
- when work is done.
-
-
- TTL restores a message to an
- unclaimed state if the worker never
- finishes.
-
-
- This pattern is ideal for dispatching jobs
- to multiple processors.
-
-
- Publish-Subscribe
- Characteristics of the Publish-Subscribe
- pattern are:
-
-
- The publisher sends a message to a
- queue.
-
-
- All workers (or subscribers) listen
- to the messages in the queue.
-
-
- Workers do not claim a
- message.
-
-
- Multiple workers can take action on
- a message.
-
-
- Workers can send a marker or cursor
- to skip messages already seen.
-
-
- TTL eventually deletes
- messages.
-
-
- This pattern is ideal for notification of
- events to multiple workers at once.
-
+
+
+ Task distribution
+ The task distribution pattern has the following
+ characteristics:
+
+
+ A producer is programmed to send messages to a
+ queue.
+
+
+ Multiple workers (or consumers) are programmed to
+ monitor a queue.
+
+
+ Only one worker can claim a message so that
+ no other worker can claim the message and
+ duplicate the work.
+
+
+ The worker must delete the message when work
+ is done.
+
+
+ TTL restores a message to an unclaimed state
+ if the worker never finishes.
+
+
+ This pattern is ideal for dispatching jobs to multiple
+ processors.
+
+
+ Event Broadcasting
+ Characteristics of the event broadcasting pattern
+ are:
+
+
+ The publisher sends messages to a
+ queue.
+
+
+ Multiple observers (or subscribers) get the
+ messages in the queue.
+
+
+ Multiple observers take action on each
+ message.
+
+
+ Observers send a marker to skip messages
+ already seen.
+
+
+ TTL eventually deletes messages.
+
+
+ This pattern is ideal for notification of events to
+ multiple observers at once.
+
+
+ Point-to-point messaging
+ Characteristics of the point-to-point messaging
+ pattern are:
+
+
+ The publisher sends messages to a queue.
+
+
+ The consumer gets the messages in the queue.
+
+
+ The consumer can reply with the result of
+ processing a message by sending another message
+ to the same queue (queues are duplex by
+ default).
+
+
+ The publisher gets replies from the queue.
+
+
+ The consumer sends a marker to skip messages
+ already seen.
+
+
+ TTL eventually deletes messages.
+
+
+ This pattern is ideal for communicating with a
+ specific client, especially when a reply is desired
+ from that client.
Message Queuing Operations
@@ -394,26 +423,25 @@
Following are some generic use cases for Message Queuing:
- Distribute tasks among multiple workers
- (transactional job queues)
+ Distribute tasks among multiple workers (transactional
+ job queues)
- Forward events to data collectors
- (transactional event queues)
+ Forward events to data collectors (transactional event
+ queues)
- Publish events to any number of
- subscribers (publish-subscribe)
+ Publish events to any number of subscribers
+ (event broadcasting)
Send commands to one or more agents
- (point-to-point or
- publish-subscribe)
+ (point-to-point messaging or event broadcasting)
- Request an action or get information
- from a Remote Procedure Call (RPC)
- agent
+ Request an action or get information from a Remote
+ Procedure Call (RPC) agent (point-to-point
+ messaging)