Dispatcher和Performer(生产者和消费者)模型是一个预先设计的解决方案,通过在中间放置一个队列来分隔流程的两个主要阶段。
这样,交易项目的生产就完全独立于它们的消费。这种异步性打破了生产者和消费者之间的依赖关系。
它是一个非常直接的设计模型,可以通过预构建的配置、更好的可重用性和可伸缩性添加许多性能改进。它涉及到一个Orchestrator队列,该队列由自动化程序填充数据。然后,事务被另一个自动化使用。
Dispatcher:在Orchestrator中,读取、组织数据并将数据输入队列的阶段称为Dispatcher或Producer;
Performer:处理队列数据的阶段称为Performer或Consumer。
Dispatcher(调度程序进程)将事务项推入Orchestrator队列。它从一个或多个源提取数据,并使用该数据创建用于Performer(执行机器人)处理的队列项。
信息被推送到一个或多个队列中,允许调度器(Dispatcher)对存储在队列项中的所有数据使用通用格式。
执行者进程(Performer)从Orchestrator队列中提取事务项,并根据公司的需要处理它们。每次处理一个队列项。它对每个被处理的项目使用错误处理和重试机制,该执行器的一个主要优点是它的可伸缩性(多个执行器可以用于单个队列)。
让我们举个例子:我们在电子表格中有人员信息和他们的电子邮件地址。需要根据模板向每个人发送带有个性化信息的电子邮件。
我们可以以以下方式使用Dispatcher和Performer模型: