随笔分类 -  [服务器]

摘要:如果是使用网格背包实现的的背包界面,类似于《暗黑》这种背包,我是这么来定义结构的。发现和原来做的一个开纸的算法很类似,但是恰好反过来。反正没事儿想起来实现一下也不错。一个物品的占位,默认左上角为(0,0)点。策划在填表的时候,只需要根据对角线关系填写(1,1)这个点就可以了。服务器Item对象,仅需... 阅读全文
posted @ 2015-04-22 23:34 河豚 阅读(566) 评论(0) 推荐(0)
摘要:系统信息采集方面,选择使用Sigar的第三方库。对于Sigar做一个简单的梳理。服务器监控,一方面要对游戏服务器的数据进行采集,另一方面也要对游戏服务器所在的系统信息进行采集。我打算使用sigar来获取系统信息的采集工作。其Demo非常完整,并且跨平台支持,本身对于.net,C++,php,pyth... 阅读全文
posted @ 2015-04-20 11:46 河豚 阅读(372) 评论(0) 推荐(0)
摘要:结合上一次的拓扑结构,大部分游戏服务器采用C++实现,如果监控亦采用C++来做,在分布式上、web操作上、网络通讯、邮件功能上都得从底层重头开始构建封装并且并不便捷,需求又是不断向前迭代的,由于要保证一定的热部署和跨平台的特性(一些库是为了复用,需要兼顾平台特性),加之C++语言本身特点,开发效率反... 阅读全文
posted @ 2015-04-18 03:58 河豚 阅读(453) 评论(0) 推荐(0)
摘要:监控本来是为了方便运维维护游戏服务器,当服务器出现异常时能够及时提醒,并能够监视服务器的一些相关情况。然而需求是在不断变更的。这句话一点都没错,写这个工具的时候尤其如此了。需求迭代,出现的很多情况开始都没有考虑清楚。对于需求做如下的罗列。迭代一:刚开始,运维说的比较简单,只要在服务器的机器上面写一个... 阅读全文
posted @ 2015-04-16 12:00 河豚 阅读(1008) 评论(0) 推荐(0)
摘要:只是列举一下伪算法的的函数步骤,留待以后思考。需要的函数说明:Item* FindItemBySourceID(); //获取同类型的物品并且数量最小具体函数操作:bool BagManager::Obtain(Item* pItem){ Item* pTempItem = FindItemB... 阅读全文
posted @ 2015-04-15 11:12 河豚 阅读(522) 评论(0) 推荐(0)
摘要:起初由于装备和道具要分别进行管理,并且装备存在随机属性的问题,最直接的思考就是生成物品UID的方式来进行区分,并且通过UID来作为map的主键来进行存储。现在仔细思考下来,其实不用map,改用std:array数组来存储会更好一些。UID只需要作为装备的唯一标示信息就可以了,用位置信息来作为唯一性的... 阅读全文
posted @ 2015-04-14 01:15 河豚 阅读(346) 评论(0) 推荐(0)
摘要:现在做的一个项目的服务器是一个单服务器。由于底层已经封装,所以有些东西并看不到,但是差不多还是可以的能够推测出来底层的架构模式。语言C++,IDE:XE5 数据库是一个很简单的文件读写,但是通过推测以及配置文件的和映射出来的函数来看,应该并不是简单的文件I/O操作bin文件,应该是深层的利用了内存映射的方式来对文件进行处理,是的内存映射文件处理大数据量的文件更加的高效。之所以这么猜测,数据库设置存... 阅读全文
posted @ 2014-01-28 14:25 河豚 阅读(281) 评论(0) 推荐(0)