Spread Toolkit
From Wikipedia, the free encyclopedia
This article does not cite any references or sources. (February 2008) Please help improve this article by adding citations to reliable sources. Unverifiable material may be challenged and removed. |
The Spread Toolkit | |
---|---|
Developed by | Spread Concepts LLC |
Initial release | 1993 |
Latest release | 4.0 / December 4, 2006 |
Written in | C |
OS | Cross-platform |
Development status | Active |
Genre | Group_communication_system, Peer to peer |
License | The Spread Open-Source License |
Website | http://www.spread.org/ |
The Spread Toolkit is a computer software package that provides a high performance group communication system that is resilient to faults across local and wide area networks. Spread functions as a unified message bus for distributed applications, and provides highly tuned application-level multicast, group communication, and point to point support. Spread services range from reliable messaging to fully ordered messages with delivery guarantees.
The toolkit consists of a messaging server, and client libraries for many software development environments, including C/C++ libraries (with and without thread support), a Java Class to be used by applets or applications, and interfaces for Perl, Python, and Ruby. Additional interfaces for many other software environments have been provided by third parties.
In typical operation, each computer in a cluster runs its own instance of the Spread server, and client applications connect locally to that server process. The spread servers, in turn, communicate with each other to pass messages to subscriber applications. It can also be configured such that clients distributed across the network all communicate with a Spread server process on a single host.
The Spread Toolkit is developed by Spread Concepts LLC, with much support by the Distributed Systems and Networks Lab (DSN) at Johns Hopkins University and the Experimental Networked Systems Lab at George Washington University.
Partial funding was provided by the Defense Advanced Research Projects Agency (DARPA) and The National Security Agency (NSA).
[edit] Bindings
Bindings for Spread Toolkit exist in the following languages/platforms:
- C++
- C#
- C# bindings and sample programs by Darin Peshev
- Lua
- Sava Bindings for Spread
- luaspread by Taj Khattra
- Microsoft Excel
- spread-excel by Jim Kleckner
- OCaml
- OcamlSpread (Early release, looking for maintainer)
- Perl
- PHP
- PECL::Spread by George Schlossnagle and Rob Richards
- Python
- Ruby
- Squeak
- Scheme
- spread.egg by Felix Winkelmann
- TCL