在实现使用 EventingBasicConsumer 的 RabbitMQ(.NET) 消费者时,控制最大工作线程数的最简单方法是什么?
据我所知,默认情况下,有多少消息进来,就有多少线程。例如,如果消费操作打开一个数据库连接,那么最大线程数应该受到控制。
最佳答案
使用consumer prefetch limit限制您的消费者允许拥有的未确认消息的数量。
例如,如果您想将线程数限制为 1,您可以为该使用者设置预取限制为 1。
请注意,您需要处于确认模式才能正常工作,在处理完消息后,您必须显式确认消息。
关于.net - 事件基本消费者 : max number of threads,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32581338/