node-amqp,限制监听事件的socket时间
node-amqp, limit the socket time for listening events
假设我喜欢 rabbitmq 队列上的 100000 个事件,限制系统连续处理它们与尝试一次消耗所有事件的最佳方法是什么?
我正在尝试多种选择,但是,机器在尝试同时处理所有选项时死机了。
你可以做到(假设你使用的是 amqplib)
channel.get('queueName', (err, msgOrFalse) => {
if (err) {
// Handle err
} else if (msgOrFalse) {
// Handle message
}
};
这会一条一条地获取消息,因此不会一次全部获取。当然需要反复调用。
我找到了答案,我只需要使用 prefetch
来确保我可以一次处理 n 个值。
假设我喜欢 rabbitmq 队列上的 100000 个事件,限制系统连续处理它们与尝试一次消耗所有事件的最佳方法是什么?
我正在尝试多种选择,但是,机器在尝试同时处理所有选项时死机了。
你可以做到(假设你使用的是 amqplib)
channel.get('queueName', (err, msgOrFalse) => {
if (err) {
// Handle err
} else if (msgOrFalse) {
// Handle message
}
};
这会一条一条地获取消息,因此不会一次全部获取。当然需要反复调用。
我找到了答案,我只需要使用 prefetch
来确保我可以一次处理 n 个值。