标签:
这主要是一年多来,个人从事Erlang游戏服开发中对一些事情的思考。
想到哪说到哪,没有条理可言。
欢迎讨论。
通常Erlang游戏服务的设计涉及到的东东包括如下:
我经历过的项目不多,只有2个。在这2个项目中我看到系统建模都采用如下一锅端的方式:
我很好奇,Erlang游戏服都这么做吗?在我看来,这一切都是乱糟糟的,不是说Erlang/OTP系统是以应用作为构建块的吗?
为什么我看不到任务应用,活动应用,公会应用、玩法应用、好友应用等等?以应用去划分系统不是更加清晰?也许还能按需加载
数据,而不是加载整个玩家数据呢?以应用建模,兴许能够更加容易复用代码呢?
再者所有东西糅杂在一起,系统的测试基本变得不可能;没有测试也就意味着bug.
尤其常见的是玩法进程夹杂了多种玩法逻辑,通过case if pattern match 去调用不同的代码。
通常搞好了一种玩法,也不经意导致其他玩法出现bug。(我在2个项目中都碰到了这个问题)。
我希望的游戏服设计应该是这样的:
也许以应用去建模,为任务构建进程显得过于大材小用。甚至于说在玩家进程里处理数据更加方便,避免不必要的进程间通信消耗。
那么我想建模成库应用也是有好处的吧。
标签:
原文地址:http://www.cnblogs.com/rubyist/p/5530575.html