11 2013 档案
摘要:一个在线2k的游戏,每秒钟并发都吓死人。传统的hibernate直接插库基本上是不可行的。我就一步步推导出一个无锁的数据库操作。1. 并发中如何无锁。一个很简单的思路,把并发转化成为单线程。Java的Disruptor就是一个很好的例子。如果用java的concurrentCollection类去做,原理就是启动一个线程,跑一个Queue,并发的时候,任务压入Queue,线程轮训读取这个Queue,然后一个个顺序执行。在这个设计模式下,任何并发都会变成了单线程操作,而且速度非常快。现在的node.js, 或者比较普通的ARPG服务端都是这个设计,“大循环”架构。这样,我们原来的系统就有了2个环
阅读全文
摘要:历经数个月的开发,达洛克战记3即将全新开服!剧情:回归到三大种族起源时期,三大种族并没有像现在三足鼎立。人类一直处于统治地位。但是突然间一群巨人的出现,让人类损失惨重,身为勇者,需要探索巨人背后的秘密,也许能找到人类以外第二个种族崛起的原因。游戏设计:在达洛克2的基础上,重新设计了整个游戏结构,淘汰了部分重复的玩法、调整了宠物玩法、新增了8仙挑战、BOSS战等趣味玩法。首次采用45度视觉+大地图,让整个游戏世界扩展了不少,合计超过100张地图,500个NPC,绝对爽过瘾!吸取了达洛克2的数值教训,这次对数值规划进行了精细的处理,在能力膨胀、资源膨胀做了深入的研究和规划。加入了丰富的礼包、活动,
阅读全文
摘要:CrackHelper.loadByteArray('../unit_data.dat', function(b:ByteArray):void{b.uncompress();var s:String = '';while(b.bytesAvailable){var a = ByteAnalyzer.read(b, 3,2,10,3,3,3,3,3,3,2,10,2,10,3,10,2,10,2,10, 3,3,3,2, 3);for each(var item in a){if(item is String)item = String(item).replac
阅读全文
浙公网安备 33010602011771号