Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers

ArticlesManaging Performance/Reliability Trade-Offs


February 1998 / Reviews / Publish and Subscribe Meets the Internet / Managing Performance/Reliability Trade-Offs

A hierarchy of reliability levels exists for P&S products, which tend to trade performance for reliability. The baseline level (often called "reliable delivery") is to publish data no more than once. Thus, subscribers who miss messages due to downtime or a network error might never receive them unless a message cache is running. Last-value and cumulative caches (which store the last piece of data, or an accumulation where appropriate) can help improve reliability without affecting performance. Reliable delivery enhances performance because the publisher doesn't have to waste time listening for complaints from subscribers. It works well for both multicast and broadcast transmission.

The next-highest reliability level uses negative acknowledgments (NAKs) from subscribers to alert the publisher that a message needs to be retransmitted. This means messages are retransmitted only when a subscriber misses one and transmits a NAK asking for a retransmit of the missed message(s). The result is that every subscriber receives every message at least once, and sometimes more than tha t. NAKs work well for multicast transmission because publishers can depend on its subscribers to act as squeaky wheels: If they don't say anything, it's because they're getting everything they need.

For even more reliability, you can move up to what Tibco calls certified delivery, which is avail able in the optional TIB/Rendezvous Pro product (which also supports distributed queueing and includes a fault-tolerant API; transactional messaging is available in a separate product, Enterprise Transaction Express). TIB/Rendezvous certified delivery requires each subscriber to positively acknowledge (ACK) receipt of each message to the publisher, although the messages are published by multicast. Positive acknowledgment is also an option for unicast publishing.

You can get even higher reliability by adding a mechanism that can keep track of all messages, approaching the type of structure provided by message queues (see "Monkey in the Middleware"). Digitally signing or encrypting messages can also add a sense of security to reliable delivery.


Up to the Reviews section contentsGo to previous article: Managing Performance/Reliability Trade-OffsGo to next article: HP Makes an Even Better Impression
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network