Copyright © Cloud Software Group, Inc. All Rights Reserved
Copyright © Cloud Software Group, Inc. All Rights Reserved


Chapter 1 Product Overview : Simplifying Distributed System Development

Simplifying Distributed System Development
Rendezvous software eases distributed system development in these ways:
Decoupling and Data Independence
Distributed systems can be difficult to develop, maintain and port. One reason for this difficulty is that components running on networked hosts are often tightly coupled—components must agree on network connections, the low-level format for data transfer, and other details. Rendezvous software allows looser coupling between the components of a distributed system. Loose coupling decreases costs for development, operation and maintenance, and increases system longevity.
Rendezvous self-describing data messages promote data independence; producers and consumers of data can communicate even if they do not share the same internal representations for data. Communicating programs can run on different hardware architectures, even though they use different bit order, byte alignment or numeric representations.
Data independence also eases program evolution. Producers can gracefully add new content fields to their messages without invalidating legacy receivers.
Location Transparency
Rendezvous software uses subject-based addressing™ technology to direct messages to their destinations, so program processes can communicate without knowing the details of network addresses or connections. Subject-based addressing conventions define a uniform name space for messages and their destinations.
The locations of component processes become entirely transparent; any application component can run on any network host without modification, recompilation or reconfiguration. Application programs migrate easily among host computers. You can dynamically add, remove and modify components of a distributed system without affecting other components.
Architectural Emphasis on Information Sources and Destinations
Decoupling distributed components eliminates much of the complexity traditionally associated with network programming. Rendezvous software frees you to devote more resources to solving application problems.
In the past, network programming was so complex that programmers often structured systems and individual component programs to minimize that complexity—even if the resulting architecture did not fit the application domain as well as it could. Rendezvous software lets you think about distributed system architecture in new ways. You can divide the system into modules along natural boundaries implied by the application’s information content.
The first step in developing a distributed system is to identify sources and destinations of information. For example, sources of information include news-wire services, data entry stations, point-of-sale stations, sensors and measuring devices. Destinations of information include data displays and visualization stations, device controllers, statistical analyzers, and personal wireless devices. Components such as databases, schedulers, materials trackers and decision support interfaces can often be both sources and destinations of information within a larger system. Analyzing a distributed application problem in these terms very often suggests the most natural, efficient and flexible solution.
Reliable Delivery of Whole Messages
Rendezvous software provides reliable communications between programs, while hiding the burdensome details of network communication and packet transfer from the programmer. Rendezvous software takes care of segmenting and recombining large messages, acknowledging packet receipt, retransmitting lost packets, and arranging packets in the correct order. You can concentrate on whole messages, rather than packets.
While some conventional network APIs guarantee reliable delivery of point‑to‑point messages, most do not guarantee reliable receipt of multicast (or broadcast) messages. Multicast messages can often be lost when some of the intended recipients experience transient network failures. Rendezvous software uses proprietary reliable multicast protocols to deliver messages despite brief network glitches.
For programs that require even stronger guarantees, see Certified Message Delivery.

Copyright © Cloud Software Group, Inc. All Rights Reserved
Copyright © Cloud Software Group, Inc. All Rights Reserved