chatofpomelo,连接gate,收到connector的地址和端口,连接connector.entry,entry里rpc调用chat的add方法。 然后,客户端进入chat页面,这时候发送消息,没有进行pomelo.init,直接pomelo.request( chat.chatHandler.send,…),哪位帮我解释下,这个消息是怎么发送过去,服务器在哪里里对此进行处理的?如果我自己写,需要添加哪些代码或者配置?
4 回复
从 connector分配获得 响应的connector的地址和端口,然后根据端口和地址,通过pomelo.init与connector服务器建立连接,然后就可以发送消息了。 有空可以看看这篇文章https://github.com/youyudehexie/lordofpomelo/wiki 希望可以帮到你理解
但是,pomelo.request(chat.chatHandler.send,… )之前,并没有用chat服务器的地址进行pomelo.init,那么这个请求是发送到哪去了呢?是原来的connector上吗?又怎么路由到chat.chatHandler.send的呢? Thanks,那文档有点儿长,明天看,今天头快炸了。
哦,大概明白你的意思,虽然很难简单解释清楚实现原理,不过可以告诉你说,都是通过connector的来发送的,哪怕真正处理你的请求是chat服务器。
留意app.js这段代码
// app configure
app.configure('production|development', function() {
// route configures
app.route('chat', routeUtil.chat);
// filter configures
app.filter(pomelo.timeout());
});
当请求路由的时候,凡是chat字段的都交给 routeUtil.chat 来分配。