近期因为公司要开发一个新wap game
其实之前也开发过wap的游戏,架构是apache+jk+tomcat(3个)
但这个架构并不理想
有好多功能没法实现,有些功能实现起上来要不太危险就是太吃资源了
我之前一直在做wap网站,如果网站用这个架构是没有什么问题的
问题就出在我现在是做游戏,游戏的即时性比网站要求高得多
我们做网站有好多数据都是做缓存,定时去数据库更新数据库,但如果你做游戏你会发现,除了配置数据,其实数据基本上是即时的,所以就没有法做缓存了,做了意义也不大。
别外之前的结构是用apache jk做群集,大家也知道,做群集最大好处是资源可以分散处理
但这也是问题所在,因为游戏实在太多内存数据了,但去同步呢???
我们那时是用数据库。。。。。但测试发现这样给数据库带来的压力实在是太大了
后来改成memcache,减轻了数据库的压力,但memcache只是一个cache,并没有事务什么的,几个tomcat之间也有机会出现数据同步问题.
现在说说我新架构的初部想法(如下图)
http服务器-->逻辑服务器-->DB
Http服务器只负责解释url和组成结果页面返回浏览器
逻辑服务器:负现整个游戏的逻辑处理,包括对数据库的cache,和内存临时数据的处理(如地图怪物分布)