我正在使用node-amqp
模块来管理rabbitmq订阅。具体来说,我为每个用户/会话分配一个排他/专用队列,并通过REST接口提供绑定方法。即“将我的队列绑定到此交换/路由密钥对”,以及“将我的队列解除绑定到此交换/路由密钥对”。持久队列:序列化/反序列化node-amqp中的队列对象
这里面临的挑战是避免在内存中保留对队列对象的引用(比如,在模块范围内的对象中)。
每次我需要它只需检索队列本身的连接,难度相当大,因为队列对象保持标签上绑定内部,可能避免违反从the amqp 0.9.1 reference如下:
客户MUST NOT尝试解除不存在的队列的绑定。错误代码:未找到
我试图使用connect-mongo简单地将队列对象设置为会话对象上的属性,因为它在其属性上使用JSON.stringify/JSON.parse。不幸的是,由于循环结构,队列对象无法“串化”。
持久化node-amqp模块的队列对象的最佳做法是什么?是否有可能序列化/反序列化?
谢谢。这个答案的相关部分是第一部分,因为我在原始问题中已经解释了第二部分的问题。 我没有意识到使用connection.queues [name]的可能性,但这当然可以解决它:-) –