- 博客(15)
- 资源 (7)
- 收藏
- 关注
原创 合服备忘
数据库设计前期数据库设计直接关系到合服的工作量。目标是尽量减少重复。以下设计能够方便合服:每个表设置一个bigint类型的uid 作为主键自增,与任何游戏数据无关,自增数字估计一个值比如说500000当1无法满足游戏中的需求时,uid的设计包括区服id,比如说 ((1>>8)) 1表示区服,rand64bits表示随机一个64位整数尽量减少关键数据冗余,比如说角色名字小结
2013-08-02 12:52:12
750
原创 逻辑服务器多线程设计
逻辑服务器多线程设计 1. 背景 分离数据库之后,逻辑服务器只有网络的IO,因此逻辑服务器是强计算类型的服务。单线程逻辑服务器固然可以实现,而且具有编码高效、简单的优点,但是不能够很好的利用多核CPU,因此本文就多线程的逻辑服务器设计分析一下。 2. 服务 游戏中有很多不同的逻辑模块为玩家提供了不同的玩法以及游戏内部数据的维护,例如:定时刷新脏数据、组队
2011-10-21 11:46:36
683
原创 MINA数据流处理
MINA数据类型 ByteBuffer、IoBuffer、Object。ByteBuffer是java的NIO接口从socket读取的数据类型;IoBuffer是MINA自定义的封装ByteBuffer的数据类型;Object是用户自定义的类型,通过用户自定义的co
2011-07-19 17:15:12
1701
原创 MINA网络框架
MINA的框架采用了multiple reactors的reactor pattern。mainRector负责acceptor建立新的连接,并把新的连接分配到subRector。在源代码中,acceptor或者mainRector对应于类NioSocketAcceptor,su
2011-07-18 17:54:38
853
原创 Sudoku (数独)和精确覆盖
偶然看到《谈谈 Sudoku (数独)》[1]的博文,心血来潮把文章的算法实现了一番。有关Sudoku的具体介绍可参考维基百科。具体解法有:回溯、精确匹配。回溯解法《谈谈 Sudoku (数独)》有比较详细的阐述,所以本文只记录一下精确覆盖的解法。精确覆盖[2
2011-07-04 17:05:02
589
原创 Sudoku (数独)和精确覆盖
偶然看到《谈谈 Sudoku (数独)》[1]的博文,心血来潮把文章的算法实现了一番。有关Sudoku的具体介绍可参考维基百科。具体解法有:回溯、精确匹配。回溯解法《谈谈 Sudoku (数独)》有比较详细的阐述,所以本文只记录一下精确覆盖的解法。精确覆盖[2][list][*]1.精确覆盖 给定集合X、S、T。S是X的子集的集合,T是S的子集,如果X中...
2011-07-03 20:24:44
429
原创 PyQt4学习资料汇总(ZZ)
一个月前研究了下PyQt4,感觉比较不错。相比wxpython,界面美观了很多,并且将界面设计与代码逻辑很好的分离了开来。关于PyQt4的资料也不少,这里我将我找到的资料汇总一下,以防自己以后忘得一干二净。1.PyQt4资料链接 http://www.riverbankcomputing.com http://wiki.woodpecker.org.cn/moin/PyQt...
2011-07-03 19:47:46
158
原创 (i * 52429) >> 19 = i / 10
原理:52429 / 2 ^19 = 0.10000038146972656所以(i * 52429) >> 19 = i * 0.1注意:2^10=1024, 103/1024=0.10058593752^11=2048, 205/2048=0.100097656252^12=4096, 410/4096=0.100097656252^13=8192, 8...
2011-06-07 12:53:31
408
原创 sudo 格式 zz
# User privilege specificationroot ALL=(ALL) ALL # Members of the admin group may gain root privileges%admin ALL=(ALL) ALL下面对以上配置做简要说明:第一项配置的作用,是允许root用户使用sudo命令变成系统中任何其它类型的...
2011-03-29 21:00:57
151
原创 开启mysql的slow queries日志
log-slow-queries = slow.log #保存日志的文件long_query_time = 20 #单位slog-queries-not-using-indexes #表示只记录没有使用索引的查询
2011-02-25 18:25:32
166
原创 Volatile 变量
[size=large]Volatile 变量[/size]Volatile 变量具有 synchronized 的可见性特性,但是不具备原子特性。这就是说线程能够自动发现 volatile 变量的最新值。Volatile 变量可用于提供线程安全,但是只能应用于非常有限的一组用例:多个变量之间或者某个变量的当前值与修改后值之间没有约束。因此,单独使用 volatile 还不足以实现计数器、...
2011-01-23 16:39:14
158
原创 JMM的happend-before原则
新的 JMM 非正式地定义了一个名为 happens-before 的排序,它是程序中所有操作的部分顺序,如下所示: * 线程中的每一个操作 happens-before这个线程中在程序顺序中后面出现的每一个操作 * 对监视器的解锁 happens-before同一监视器上的所有后续锁定 * 对 volatile 字段的写 happens-before同一...
2011-01-23 16:31:13
596
原创 synchronized语义
1.synchronized控制的代码块标识为临界区,各个线程互斥执行代码块2.当线程进入代码块的时候,代码块中引用的变量值从主存中重新读取;当线程退出代码块是代码块中引用的变量值被刷新到主存中...
2011-01-23 16:27:13
197
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人