关于MMORPG开发遇到的困惑

我看了BrowserQuest的实现,在WORKER里创建了世界,世界里面的怪物区域采用TIMER进行刷新和AI处理,这个游戏业务逻辑比较简单,玩家也少,如果同时承载大量玩家的话,感觉这个WORKER响应会出现延迟。 现在我想实现一个MMORPG的游戏,用GateWayWoker的模型,如果把怪物也按照BrowserQuest放到一个WORKER里,应该会有很多问题,我想了一种解决方案,请大神帮我评估一下,如果这样做...

ljfuyuan 发表与 2015-09-11 3726 浏览 1 回答
在Worker中设定过多的TIMER会导致误差过大吗?

在worker中,经常会有业务需要用计时器,而一个Worker只有一个LIBEVENT监听事件,如果有timer或者read事件到达,触发执行回调的过程中执行了耗时的业务逻辑,那timer是不是会无法按时触发,比如1毫秒执行一次,应该会被耗时的业务拖长时间吧? 不知道我这样认为对不对,如果对的话,是不是只能优化业务逻辑了?...

ljfuyuan 发表与 2015-09-09 3037 浏览 1 回答
全局数据存储在哪里最合适?

在GatewayWorker模式下,为了重启工作进程不影响客户连接,所以在Worker进程里不保存用户状态,所以我想问下在做MMO游戏类型的时候,大量用户数据放在哪里比较合适?不能在Worker里用全局变量保存,又不能在GATEWAY里保存了,通过传递数据的方式访问。如果用REDIS之类的来交换数据,由于是REDIS是单线程的,如果大量用户并发的话,REDIS势必会造成响应速度慢的问题,有没有什么好的方法呢?(Mec...

ljfuyuan 发表与 2015-09-07 4073 浏览 1 回答

ljfuyuan

1915
积分
0
获赞数
0
粉丝数
2015-09-07 加入
🔝