版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/themagickeyjianan/article/details/88852722
可见,lib/common/service下面一共有6中service,当然包括最常用的channelService和sessionService
var ChannelService = require('../common/service/channelService');
module.exports = function(app, opts) {
var service = new ChannelService(app, opts);
app.set('channelService', service, true);
service.name = '__channel__';
return service;
};
很多service就是通过set,这样挂载在app全局对象上,相当于这些service变成了一个单例类,从而直接this.app.get('channelService') 这样获得之前注册的一个service,根据玩家uid和绑定的sid,就确定下来是哪个服务器,哪个channel,这样写逻辑时,就知道广播、发消息时,发往哪里