spread zaytsev3

Post on 02-Nov-2014

1.639 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Высокопроизводительные системыобмена сообщениями:

Spread Toolkit

Илья Зайцев

В этом докладе

Что такое Message Oriented Middleware (МОМ)Group Communication Systems (GCS) подмножество

MOMSpread Toolkit - open source GCSСхемы использования Что еще существует

Что такое Message Oriented Middleware (МОМ)

• Задача - уменьшить сложность разработки распределенных систем

• Нет необходимости в знаниях платформ, сетевых интерфейсов и протоколов

• Соединить разнородные (платформы, языки) процессы

• Как правило большой набор API для разных языков• Асинхронные вызовы• Очереди сообщений - временное хранение

сообщений для занятых или не присоединенных процессов

• Реализации client/server, broadcast или multicast

Group Communication System (GCS) подмножество MOM

• Получение сообщений от всех членов группы• Информация о составе групп• Гарантированный порядок доставки

сообщений в группе

Spread Toolkit - open source GCSЧто есть и чего нет• Работает на большинстве популярных OS• API доступен для С/C++, Java, Python, Perl• Сетевое взаимодействие через мультикаст и

бродкаст• Один к одному и один ко многим

• Нет persistence• Нет подтверждения о доставке• Нет безопасности

Как устроено

• Демоны взаимодействуют через мультикаст или broadcast• Приложения через API соединены с демоном через unix sockets

или TCP/IP

Конфигурация

Spread_Segment 10.230.231.255:7777 {

mfd60 10.230.231.60

mfd47 10.230.231.47

}

Производительность

Производительность. Большие сообщения >1КПо данным Spread Concepts LLC

Производительность. Маленькие сообщения ~700bПо данным Spread Concepts LLC

Производительность.Задержки подключения/отключения.

По данным Spread Concepts LLC

Недостатки• Нет persistence - нет получателя? Сообщение

потеряно• Нет подтверждения о доставке - нет получателя? Вы

об этом не узнаете• Нет безопасности - любой может подключится к

группе и послать сообщение

• Если не вычитывать сообщения с достаточной скоростью то насильное отключение без предупреждений

• Размер сообщения ограничен ~100К• Динамическая реконфигурация возможна, но не

очень проста• Иногда схема процесс->демон->демон->процесс

слишком затратная

Схемы использования групповых коммуникаций

• Общая шина запросов все обработчики видят все запросы

• Общая шина управлениязапросы обрабатываются локально (локальная группа) и передаются на выбранный обработчик

Пример многоуровневой обработки для Apache в режиме prefork

Что еще существует• TIBCO Rendezvous• 29West Ultra Messaging• IBM MQSeries• Advanced Message Queuing Protocol

Конец

• Спасибо! Вопросы?

• i.i.zaytsev@gmail.com

top related