Какой шаблон проектирования или методику программирования использовать для отделения потока данных от потока управления?

В распределенной системе есть один экземпляр управления и несколько экземпляров обработки. Экземпляр управления отправляет команды различным экземплярам обработки. Таким образом, узлы обработки должны иметь некоторую логику анализа команд и дополнительную логику для выполнения этих команд.

Пропускная способность важна для экземпляров обработки, поэтому реальный поток данных должен быть как можно меньше затронут.

Существует ли шаблон проектирования или методика программирования, которую я могу использовать для четкого разделения потока данных и управления в экземплярах обработки при сохранении максимально высокой производительности потока данных?

Редактировать:

Общая реализация на данный момент выглядит следующим образом: имеется N потоков обработки, объединенных в пул и один поток управления. По крайней мере, фактически, все они имеют свои собственные структуры данных. Что может сделать управляющий поток, так это изменить фактическую функцию потока. Я рассматриваю шаблоны проектирования как общие, высокоуровневые проекты, которым мне не нужно пристально следовать, но все же меня интересует, существует ли такой высокоуровневый дизайн, который минимизирует нарушение потоков обработки.
Я нацеливаюсь на C ++ 17, если это будет иметь какое-либо значение.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …