读书人

有网游服务端有关经验的请进

发布时间: 2013-08-04 18:26:16 作者: rapoo

有网游服务端相关经验的请进
最近做网游服务端的逻辑开发,感觉不大对劲。

1、表结构经常做修改。
---- 我的观念是:表结构一旦确定下来就不该随意去修改,毕竟表一般都不是独立存在的,而且要是有记录了也会有约束,数据量大了修改表结构应该也是有一定的风险的。但是看他们修改表结构就跟家常便饭一样。。。

2、字段名让我感觉很别扭。
---- 枚举型的字段名每次都是用数字来区分,比如skill1,skill2,skill3... 还有什么begin_time1,begin_time2, begin_time3 ...

我想问一些规范一点的网游公司(自认为规范的也行)的开发人员,对这2个问题是怎么看的? 或者是您之前也有遇见类似的问题,是如何解决的?

其实还有很多问题,让我觉得挺难受的,可能是之前接触比较多的应用系统的关系?
[解决办法]
开发阶段修改表频繁一点也没什么大不了的,数据不对清空就是
[解决办法]
第一个可以把结构定义在 C++ 里面, 数据库保存序列化后的二进制, 这样修改数据结构就不用改数据库的表结构了. 缺点是查询统计分析起来更麻烦了.
[解决办法]

引用:
最近做网游服务端的逻辑开发,感觉不大对劲。

1、表结构经常做修改。
---- 我的观念是:表结构一旦确定下来就不该随意去修改,毕竟表一般都不是独立存在的,而且要是有记录了也会有约束,数据量大了修改表结构应该也是有一定的风险的。但是看他们修改表结构就跟家常便饭一样。。。

2、字段名让我感觉很别扭。
---- 枚举型的字段名每次都是用数字来区分,比如skill1,skill2,skill3... 还有什么begin_time1,begin_time2, begin_time3 ...

我想问一些规范一点的网游公司(自认为规范的也行)的开发人员,对这2个问题是怎么看的? 或者是您之前也有遇见类似的问题,是如何解决的?

其实还有很多问题,让我觉得挺难受的,可能是之前接触比较多的应用系统的关系?

在很多应用环境下,很多表设计的规范都是不可取的,也许你会认为说,把skill1,skill2..放到一张新表里,再用外键链接这样好看点,但你得想到游戏服务器很多时候为了减轻数据库IO,都是把数据全部加载到内存中的,你要是太复杂的表结构,就不太适合放到内存中
另外就是偷懒啦,策划动不动就今天这个属性明天那个属性,一拉拉一堆,一开始还有心情设计,后来就不管了直接加字段就行了

读书人网 >C++

热点推荐