Spread Toolkit — это пакет программного обеспечения для компьютеров, который обеспечивает высокопроизводительную систему групповой связи , устойчивую к сбоям в локальных и глобальных сетях . Spread функционирует как унифицированная шина сообщений для распределенных приложений и обеспечивает высоконастроенную многоадресную рассылку на уровне приложений, групповую связь и поддержку «точка-точка». Услуги Spread варьируются от надежной передачи сообщений до полностью упорядоченных сообщений с гарантиями доставки.
Набор инструментов состоит из сервера обмена сообщениями и клиентских библиотек для многих сред разработки ПО, включая библиотеки C / C++ (с поддержкой потоков и без нее), класс Java для использования апплетами или приложениями, а также интерфейсы для Perl , Python и Ruby . Интерфейсы для многих других сред ПО были предоставлены третьими сторонами.
При типичной работе каждый компьютер в кластере запускает свой собственный экземпляр сервера Spread, а клиентские приложения подключаются локально к этому серверному процессу. Серверы Spread, в свою очередь, взаимодействуют друг с другом для передачи сообщений приложениям-подписчикам. Его также можно настроить так, чтобы клиенты, распределенные по сети, взаимодействовали с серверным процессом Spread на одном хосте.
Набор инструментов Spread разработан компанией Spread Concepts LLC [2] при большой поддержке Лаборатории распределенных систем и сетей (DSN) Университета Джонса Хопкинса [3] и Лаборатории экспериментальных сетевых систем Университета Джорджа Вашингтона [4] .
Частичное финансирование было предоставлено Агентством перспективных исследовательских проектов Министерства обороны США (DARPA) и Агентством национальной безопасности (АНБ).
Привязки для Spread Toolkit существуют для многих языков и платформ: