使用 RabbitMQ 及其通道模型时,我应该多久关闭一次通道?
例如,最好的做法是
- 在它打开的方法结束时关闭通道?
- 在不同方法之间全局重用通道?
在旁注中:我通过 Langohr 库在 Clojure 中使用 RabbitMQ,因此更喜欢没有任何全局状态,这促使我在相关消息的开头声明通道,然后在结尾再次关闭它们。我只是不确定这是否是有意的。
如果打开通道最容易,请执行一个方法,然后关闭它,一定要这样做。如果您的性能要求导致速度过慢,请开始研究通道重用。
打开/关闭通道并不像打开和关闭连接那样占用资源。
注意: RabbitMQ 团队会监控邮件列表,rabbitmq-users
有时只会在 StackOverflow 上回答问题。