麻烦大神解惑:用gatewaywork用来做棋牌游戏服务器的一些纠结点

xfurther

大神好,workerman的文档已经看过一遍了,还有gatewaywork的文档也看了一遍,基本思路有了一定了解,
现在想用gatewaywork搭建一个棋牌的游戏服务器,有几个纠结点,麻烦指导一下,不胜感激:
1、在多个gatework和businesswork的情况,有什么方式可以确保同一个房间(假设一个房间4个人)里的几个客户单在同一个businesswork进程下?
2、这个游戏服对外是透明的,就是无论我这个游戏服开几个进程,对外注册都是一个单独的游戏服,如何把他作为一个客户端往第三方管理服上报信息?
3、数据保存需要借助GlobalData组件吗?不借助的话一般是怎么组织数据的?

5039 4 0
4个回答

walkor

1、gatewayWorker支持路由http://www.workerman.net/gatewaydoc/gateway-worker-development/router.html,可以将请求路由到任何businessWorker进程处理。
2、如何往第三方上报信息主要看第三方给的什么接口,这个取决于第三方
3、如果需要全局数据共享的话可以用GlobalData,或者用mysql redis等都可以

  • 暂无评论
xfurther

1、通过router是可以,但是客户端连接的时候我并不确定他要连哪个房间,必须在发消息的时候才能确定,client和business绑定之后,还可以重新绑定吗?
2、第三方就是一个socket接口,发什么数据的话先不考虑;我想问的是如何在多个gateway进程中起一个socket的客户端去连接第三方。

  • 暂无评论
walkor

1、router每次请求都是动态计算的,实际上没有绑定一说。如果没有有用的信息先可以路由到任意businessWorker,如果加入房间(或者可以从消息里获得房间号),那么可以通过房间号固定路由到某个businessWorker。

2、AysncTcpConnection是用来发起异步socket链接的

  • 暂无评论
xfurther

好的。。O(∩_∩)O谢谢大神。。

  • 暂无评论
年代过于久远,无法发表回答
🔝