powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Disruptor шаблон.
17 сообщений из 17, страница 1 из 1
Disruptor шаблон.
    #37995622
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то ближе к этому лету читал заметку Фаулера об архитектуре lmax.
http://martinfowler.com/articles/lmax.html
Сейчас вернулся к ней и так как пятница и флуд мод он: кто нибудь на практике использовал что-нибудь подобное?:)
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37995639
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почитайте cheremin.blogspot.com
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37995665
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл никПочитайте cheremin.blogspot.com
О! Прикольно. Лекция.
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37995757
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В чем суть в двух словах?
В бизнес-приложении применили циклический буфер типа того что для рендера звука?
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37995792
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛагманВ бизнес-приложении применили циклический буфер

Не совсем "в бизнес-приложении". В довольно специфичном high-load. Подойдёт не везде. Но местами можно подъюзать.
И не просто циклический буфер а с несколькими интересными оптимизациями.
Ну и не совсем только циклический буфер, а циклический буфер в событийной архитектуре.
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996024
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛагманВ чем суть в двух словах?
В бизнес-приложении применили циклический буфер типа того что для рендера звука?

Не сталкивался с рендером звука, но, видимо, нечто похожее.
Допустим, есть конвейер событий фиксированной длины(причем это чаще всего массив для оптимизации чтения из кэша с фиксированным шагом). Над конвейером работают обработчики, каждый из которых содержит набор курсоров, которые он и только он может модифицировать, но читать может чьи угодно. Курсор содержит индекс последнего элемента, который он обработал(бугага, вода водяная). Я так понимаю есть определенный барьер обработчиков, то есть каждый обработчик должен знать, кто должен всегда идти впереди.
Таких очереди две, между ними определенный бизнес процессор, причем однопоточный. Море оптимизации и так далее.
На входе к нам приходит некий набор байт, входная очередь обрабатывает его и превращает в нечто, что можно скомить бизнес процессору, бизнес процессор отдает выходной очереди. Причем бизнес процессор как бе говорят, что во первых не содержит операций типа IO, все держит в памяти и максимально примитивный.

Как бе пример - биржа.
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996029
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверин,

А, ну все эту завернуто в красивую обертку, со стратегией ожидания обработчиков: типа там блокинг, паркинг, муяркинг...тонны лютого батхерта от знающих людей и собственную платформу..даже web; )
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996091
Лагман
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок, спасибо ) Хотя я так понял там размер буфера предсказуемый и ограниченный. Для такого круга задач конечно ок.
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996103
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛагманОк, спасибо ) Хотя я так понял там размер буфера предсказуемый и ограниченный. Для такого круга задач конечно ок.
Disruptor, кстати не "шаблон". Это конкретная concurrency компонента или даже фреймверк.
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996112
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczЛагманОк, спасибо ) Хотя я так понял там размер буфера предсказуемый и ограниченный. Для такого круга задач конечно ок.
Disruptor, кстати не "шаблон". Это конкретная concurrency компонента или даже фреймверк.

Да, компонента или фреймворк вроде есть...но где-то я читал называли и шаблоном...что в принципе логично для идеи, но не для реализации..она очень архитектурно специфична, если я правильно там все понял.
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996155
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинДа, компонента или фреймворк вроде есть...но где-то я читал называли и шаблоном...

Шаблон это некий обобщеный стандартный подоход. В данном случае это очередь реализованая через цикличный массив. Как, например, ArrayDeque.

Озверинчто в принципе логично для идеи, но не для реализации..
Disruptor же это скорее большой набор оптимизаций поверх этого цикличного массива (как это бъюдет по-рус-ски?). Оформлено это всё в opensource framework, куда нужно подставить свои хэндлеры и паблишеры.

Озверинона очень архитектурно специфична, если я правильно там все понял.

Лекция клёвая от Руслана. Он там объяснил и архитектуру в целом - Actor-style и когда фреймверк подходит.
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996553
ResidentR6
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А по-русски можно теперь. Что оно и с чем едят?
Лично я на оптимизации смотрю пока сквозь пальцы: прежде чем
рекламировать цвет обоев, нужно понимать в каком районе помещение. За
мегатоннами текста я не понимаю главного: за счёт чего образуется
выгода, и чем сия танцулька с бубном лучше обыкновенного Map/Reduce который?

И если я правильно понимаю, сие чудо имеет свойство накапливать ошибку?
Одно неверное движение - и вся эта математика банкротит фирму её
применившую?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996560
ResidentR6
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
12.10.2012 22:27, ResidentR6 пишет:
> А по-русски можно теперь. Что оно и с чем едят?
> Лично я на оптимизации смотрю пока сквозь пальцы: прежде чем
> рекламировать цвет обоев, нужно понимать в каком районе помещение. За
> мегатоннами текста я не понимаю главного: за счёт чего образуется
> выгода, и чем сия танцулька с бубном лучше обыкновенного Map/Reduce который?
>
> И если я правильно понимаю, сие чудо имеет свойство накапливать ошибку?
> Одно неверное движение - и вся эта математика банкротит фирму её
> применившую?

И в догонку, а является ли сей циклический буфер итератором? Я бы
сказал, это по сути главный вопрос.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996625
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ResidentR6А по-русски можно теперь. Что оно и с чем едят?
Лично я на оптимизации смотрю пока сквозь пальцы: прежде чем
рекламировать цвет обоев, нужно понимать в каком районе помещение. За
мегатоннами текста я не понимаю главного: за счёт чего образуется
выгода, и чем сия танцулька с бубном лучше обыкновенного Map/Reduce который?

И если я правильно понимаю, сие чудо имеет свойство накапливать ошибку?
Одно неверное движение - и вся эта математика банкротит фирму её
применившую?


При чем здесб map\reduce вообще?
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996626
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ResidentR6
И в догонку, а является ли сей циклический буфер итератором? Я бы
сказал, это по сути главный вопрос.

И при чем здесь итератор тоже не понятно:)
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996649
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл никИ при чем здесь итератор тоже не понятно:)
Не обращай внимание. Он постоянно пургу несет, что здесь, что на RSDN
...
Рейтинг: 0 / 0
Disruptor шаблон.
    #37996753
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ResidentR6А по-русски можно теперь. Что оно и с чем едят?
Лично я на оптимизации смотрю пока сквозь пальцы: прежде чем
рекламировать цвет обоев, нужно понимать в каком районе помещение. За
мегатоннами текста я не понимаю главного: за счёт чего образуется
выгода, и чем сия танцулька с бубном лучше обыкновенного Map/Reduce который?

И если я правильно понимаю, сие чудо имеет свойство накапливать ошибку?
Одно неверное движение - и вся эта математика банкротит фирму её
применившую?


Я чуть вышел дал более развернутый ответ на ваш вопрос..ну, в моем понимании ;)
Что за накопление ошибки - я не понял..но над конвейером, помимо всех прочих обработчиков, работает еще логгер. Суть в том, что бизнес процессор все хранит в памяти, а потому, очень важно, чтобы при падении системы ее восстановление было быстрым..логгеры этому способствуют, восстанавливая систему из лога транзакций(условно)

Причем здесь итератор я тоже не понял, но буфер, по сути - это массив.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Disruptor шаблон.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]