Solace provides the ability to approximate queue semantics within the non-persistent publish and subscribe environment. This is useful for a number of reasons –
Deliver-To-One (DTO) is a Solace Extension to the standard Publish and Subscribe pattern. It allows the Solace appliance to mimic queue behaviour in the pub/sub messaging world where queues do not formally exist. The application can use DTO to provide the fail-over and load-balancing behaviours that are typical of queues.
Deliver-To-One is a property of the published message, i.e. the publisher must flag a message for delivery to a single client by setting the DTO property to true. The way subscribers receive the messages that are sent with the DTO flag set are dependent on their ‘connection priorities’:
The two modes of DTO operation are shown in the accompanying figures. It is also worth noting that the two modes are NOT mutually exclusive. It is possible, although unusual, to mix modes, i.e. 6 clients connect, 3 at priority 1 and 3 at priority 2.
The priorities used by subscribers, to determine their role in DTO, are supplied as session properties to the SDK.
There is one important limitation compared to queues in the persistent domain. There can be only one instance of a specific topic that is “deliver-to-one” within a VPN. This means that there is no ability to publish to a single topic and have it applied to two separate DTO groups.
DTO allows a user to mimic queue behaviour using extensions to standard publish and subscribe mechanisms. However, in doing so it prevents certain applications from using the same mechanisms to take a copy of the message for auditing, replay or monitoring purposes.
To allow these applications to still function solace also provides a Deliver-To-One-Override function that may be applied as part of the subscription. When the subscription flag is applied the clients that override DTO will receive a copy of the message in addition to the client that is part of the DTO group and will receive the message as part of the DTO process.
There are a number of use-cases that can make use of the DTO facility
Mat joined Solace in 2005 and currently runs the technical operations within EMEA. He has extensive expertise within the messaging space and has worked to evangelize the appliance form factor for messaging within the region. Following successful sales Mat has work closely with all of the major accounts and partners within the region providing guidance on messaging and application architecture. Prior to joining Solace Mat worked for Alcatel through the acquisition of Newbridge Networks. At Alcatel/Newbridge Mat held a Systems Architect role and was responsible for the design and successful implementation of many large networks encompassing diverse technologies as optical transmission, ATM, IP, Ethernet, NGN and Mobile for many large clients. Before making the shift into the vendor space Mat held numerous positions at NTL and BT (UK Carriers), building and operating large networks and services for business and residential customers.[position] => [url] => https://solace.com/blog/author/mathewh/ ) )