RabbitMQ C#客户端可扩展吗?

时间:2018-11-26 17:45:47

标签: c# rabbitmq scalability

在几个地方的官方.net客户端代码中,我看到了lock的语句。这引发了一个内部问题,即对性能有多大影响。

我当前的解决方案是一个使用Graylog进行日志记录的Web应用程序,其接收器是Rabbit队列。单个关键路径请求可能仅导致几十个日志,并且理想情况下应在500ms上运行。在高峰时刻,我们希望每秒处理3-5个请求,每秒处理1-2百个其他请求。

现在,连接和模型基本上是单例的,我的问题是:当我们遇到重负载时,我应该担心那些锁吗?有死锁点吗?

1 个答案:

答案 0 :(得分:0)

通常,锁本身相对便宜,如此处所示:How expensive is the lock statement?

  

简短答案:50ns

因此,实际的问题是:锁定的部分实际上是,这有关系吗?

我的假设是,这是将消息发布到队列中的部分(尽管如果您对此进行详细说明会有所帮助)。

因此,我没有深入研究代码,但是由于它纯粹是在客户端,因此您应该能够轻松地横向扩展那些客户端。