const RedisMQProxy = require('./RedisMQProxy'), PAY_MQ_CHANNEL = 'pay_mq_channel'; // 订阅channel RedisMQ.on(PAY_MQ_CHANNEL, function(message) { console.log('notification received:', message); // 广播消息到指定socket // ... }); // 订阅一次性的channel RedisMQ.once(PAY_MQ_CHANNEL, function(message) { // ... }); // 当接收到支付数据时,推送频道消息 RedisMQ.emit(PAY_MQ_CHANNEL, {id: '01', msg: `hello ${PAY_MQ_CHANNEL}!`});
目前该项目已经健康运行了一个多月。由于socket server的多进程间消息推送依赖于redis的消息中转,而Redis使用的是单进程,未能充分利用CPU。当业务膨胀的时候,redis就要考虑分布集群了。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
您可能感兴趣的文章: