Я планирую иметь много параллельных потребителей в моем дисрапторе.
Мне нужно, чтобы каждый потребитель потреблял только те сообщения, которые предназначены для него.
Например, у меня есть сообщения типов A, B, C, и у меня есть буфер, например
#1 - type A, #2 - type B, #3 - type C, #4 - type A, #5 - type C, #6 - type C, (and so on)
У меня есть потребители для каждого из типов. Как мне добиться, чтобы потребитель для А принимал сообщения 1 и 4, для типа Б — сообщение 2, С — сообщения 3, 5, 6?
Важно: я хочу, чтобы обработка была независимой. Потребители не должны быть объединены в цепочку, каждый из которых перемещается по буферу независимо. Обработка #6 потребителем "типа C" может происходить раньше, чем #1 для типа A, если потребитель для A медленнее, чем для C.
Я ценю объяснение, как это сделать с конфигурацией разрушителя LMAX.