現在、私はnode.jsとredisを使用してアプリケーションをビルドしています。私はredisを使用する理由はpublish/subscribe機能のためです。このアプリは、ユーザーがユーザーに入ったときや部屋の外に出たときにマネージャーに通知するだけです。redis publish/subscribeの使い方
function publishMsg(channel , mssage){
redisClient.publish(channel,JSON.stringify());
}
publishMsg('room/1/user/b',{'room':1,'user':'b'});
publishMsg('room/1/user/c',{'room':1,'user':'c'});
publishMsg('room/2/user/b',{'room':2,'user':'b'});
publishMsg('room/2/user/c',{'room':2,'user':'c'});
function subscribe(pattern){
redisClient.psubscribe(pattern);
redisClient.on('pmessage', function(pattern, channel, message){
console.log('on publish/subscribe ', pattern+" "+channel+" "+message+" "+ JSON.parse(message));
});
}
私が参加し、分けるイベントを聞きたいから、私の質問は ですが、私は
redisClient1.psubscribe('room/*/user/*/join');
redisClient2.psubscribe('room/*/user/*/disjoin');
か、単に聞くために1 redisclientを使うように、これら2つのイベントが聞くために2 redisclientを使用する必要がありますし、コールバック内のロジックを分離する
redisClient2.psubscribe('room/*/user/*');
私はこれらの2つの方法が可能であることを知っていますが、実際にどのような状態で人々がそれらを使用するのかわかりません。