处理所有可能的系统; 整个游戏服通常只有玩家进程、公会进程、玩法进程以及一些公共进程
小编导读:
尤其常见的是玩法进程夹杂了多种玩法逻辑,通过case if pattern match 去调用不同的代码。
活动系统
聊天系统
通常搞好了一种玩法,也不经意导致其他玩法出现bug。(我在2个项目中都碰到了这个问题)。
转盘
我很好奇,Erlang游戏服都这么做吗?在我看来,这一切都是乱糟糟的,不是说Erlang/OTP系统是以应用作为构建块的吗?
为什么我看不到任务应用,活动应用,公会应用、玩法应用、好友应用等等?以应用去划分系统不是更加清晰?也许还能按需加载
我希望的游戏服设计应该是这样的:
欢迎讨论。
这主要是一年多来,个人从事Erlang游戏服开发中对一些事情的思考。
公会系统
通常Erlang游戏服务的设计涉及到的东东包括如下:
以应用划分,玩家进程无需加载所有数据,需要的数据在相关的应用解决,甚至于对非热点数据,相关应用可能加载处理完就释放内存了。
再者所有东西糅杂在一起,系统的测试基本变得不可能;没有测试也就意味着bug.
整个游戏服里你看到的都是进程,看不到应用。
任务系统
我经历过的项目不多,只有2个。在这2个项目中我看到系统建模都采用如下一锅端的方式:
想到哪说到哪,没有条理可言。
那么我想建模成库应用也是有好处的吧。
即玩家进程加载了所有玩家数据,处理所有可能的系统;
好友系统
也许以应用去建模,为任务构建进程显得过于大材小用。甚至于说在玩家进程里处理数据更加方便,避免不必要的进程间通信消耗。
应用可单独测试,无需依赖其他东东。
系统以应用做为构建块,你会有任务应用、好友应用、商城应用、公会应用等等
通常玩法进程很少,很多逻辑上有区别的玩法都简单粗暴塞进一个玩法进程
数据,而不是加载整个玩家数据呢?以应用建模,兴许能够更加容易复用代码呢?
Erlang游戏服设计总结
玩法系统
不同的玩法以不同的进程构建,一种玩法搞好了,你无需再去理它。
以及其他
整个游戏服通常只有玩家进程、公会进程、玩法进程以及一些公共进程。
商城
热门资讯
05-26
· 龙妈自曝跟父母看《权力的游戏05-26
·或许换掉Windows XP的最佳时机已05-26
·电视剧权力的游戏4剧情介绍 首部05-26
·如何在众多对手之中生存下来05-26
·本作将提供实体卡牌与虚拟卡牌两05-26
·这也使其成为首款支持该功能的Xb05-26
·且每年在线访问量高达数十亿05-26
·但是后面发生了可怕的事情
传奇特荐
05-04
·《期间》评最具影响力50款科技产05-05
·虐心游戏《Choppa》评测:虐的就05-06
·慈文传媒第一季度矫正通告:上半05-19
·女主播直播斗鸡游戏 衣着暴露动05-19
·眼下就是花式告白的最佳时机05-19
·《白发魔女传》删档测试今日开启05-19
·整体音乐让游戏带入感非常不错05-20
·《诛仙手游》中还有凄凉肃杀的空05-21
·pass:深圳市巨彩科技05-21
·pass:棋牌游戏银商