0

我想了解托管消息队列消费者在一个天蓝色的角色中的最佳做法。我有许多不同类型的消息使用者订阅不同的Azure服务总线订阅(或者如果您想要调用它,则排队)。我想知道是否应该在一个工作者角色中为每个消费者实例化多个线程,还是应该为每个消费者部署到多个工作者角色。Azure工作者角色+消息队列消费者的数量

回答

2

这实际上取决于您的应用和工作量。如果你有任务被I/O阻塞,那么你应该运行多个线程;否则,你将有一个虚拟机实例没有被有效使用。如果它主要是基于CPU的,则可能会发现可以使用较少数量的线程高效运行。

如果无法在单个实例中处理容量(或者需要高可用性,至少需要两个实例),则只应扩展您的工作程序实例。请记住,一个工作者角色实例是一个完整的虚拟机,因此每个队列消费者添加一个虚拟机可以缩减成本,而且在I/O绑定的应用程序中(或阻止其他事物,例如Web服务调用)。

你需要做一些实验来看看在工作端有多少线程可以使用。

+0

谢谢,是否有任何库允许我管理线程和控制运行时(或通过配置)运行多少线程? – Eatdoku

相关问题