Схема разрушения LMAX: есть ли порт для C++?
Существуют Java и .NET версии с открытым исходным кодом шаблона Disruptor LMAX, как описано в видео LMAX - Как сделать 100K TPS с задержкой менее 1 мс. Вот больше ссылок на информацию о паттерне Disruptor.
Кто-нибудь знает о порте паттерна Disruptor для C++, готового или в бета-версии?
Обновить
Очевидно, что другие призывают к использованию C++ версии паттерна Disruptor.
3 ответа
Да, уже есть функциональный порт C++. См. http://www.2robots.com/2011/08/13/a-c-disruptor/.
Из приведенной выше ссылки ("другие звонят..") комментарии:
Тема для обсуждения предстоящего C++ порта шаблона Disruptor: http://groups.google.com/group/lmax-disruptor/browse_thread/thread/4a47a0a9b5837ca2
Производительность C++ версии Disruptor: ок. 22 миллиона сообщений в секунду, при пакетной обработке это достигает 100 миллионов сообщений в секунду, см.: http://mechanical-sympathy.blogspot.com/2011/08/inter-thread-latency.html
Существует бесплатная версия hmbdc-base.rpm, которую можно скачать с:
https://bitbucket.org/hmbd/hmbdc-rel/downloads
Он поддерживает CentOS 7 и не использует виртуальные функции с задержкой до микросекунды, очень быстро.
Он также имеет надежную поддержку подписки / публикации многоадресных сообщений.