随笔分类 -  游戏服务器

摘要:看上去SqlSugar这个东西声称最快的ORM,和java的 nhibernate比,其实除了批量操作快了不少,其他没大的差别。 阅读全文
posted @ 2018-08-29 02:24 孤心诣 阅读(744) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2017-05-08 18:04 孤心诣 阅读(230) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2017-05-08 18:03 孤心诣 阅读(235) 评论(0) 推荐(0)
摘要:首先见:LegendServer拓扑架构图 因为上次删档封测测试存在统计CCU时出现不准确的情况,需要做负载均衡的优化: 每个类型的服务器可以多配置但是每个服务器在处理逻辑时是单线程的,但每个服务器就并行与Center交互的,不能由Proxy、AC、Logic在检测到玩家上线时将各自的CCU通知Ce 阅读全文
posted @ 2016-11-01 00:07 孤心诣 阅读(731) 评论(0) 推荐(0)
摘要:该架构适合做休闲棋牌类游戏,如果要做分区服的MMORPG类型游戏则需要网关服务器配置多台,世界服务器单台,以及地图服务器多台等等,可以在此处跳转至大世界分布式自适应服务器架构进行参考做调整:http://www.cnblogs.com/legendstudio/p/4917617.html 阅读全文
posted @ 2016-07-12 15:34 孤心诣 阅读(1642) 评论(0) 推荐(0)
摘要:AppStore与GooglePlay游戏安全支付服务器模式详细流程 整体拓扑架构图见:http://www.cnblogs.com/legendstudio/p/4917617.html 如果图片过小,可以Ctrl+鼠标滚轮放大显示 阅读全文
posted @ 2016-04-19 22:48 孤心诣 阅读(818) 评论(0) 推荐(0)
摘要:(如果图小,可以Ctrl+鼠标滚轮给缩放) 基于上次《legend分布式服务器集群并发登陆上线游戏压测结果》之后做了逻辑处理压力测试,仍然只配置了单个网关与单个逻辑服在集群中,结果如下: 测试用例: 第一步:上线一万个玩家,然后每20秒钟让每个玩家都往网关服务器发送一个逻辑计算请求,网关服务器转发请 阅读全文
posted @ 2016-01-12 00:15 孤心诣 阅读(960) 评论(0) 推荐(0)
摘要:以下分别对1万与1.5万人并发登录并上线进游戏时的测试结果,只配置了单网关单逻辑服单数据服,如果配置多组部署,且同样是这个量级的CCU则数据肯定会更好很多,总CCU随着部署结点的增多而增加,集群中服务器配置都是i5四核或者八线程CPU,8G内存,报告如下: 本次测试每个客户端从登陆到上线进场景将会发 阅读全文
posted @ 2016-01-09 19:50 孤心诣 阅读(1048) 评论(0) 推荐(0)
摘要:如果用msgpack做序列化消息时每次临时调用SerializationContext.Default.GetSerializer会很坑的,因为它很耗,我们可以在服务器启动的时候提前自动注册到字典中,序列化时根据消息的Type从字典里取,如图: 阅读全文
posted @ 2015-12-17 14:25 孤心诣 阅读(1650) 评论(0) 推荐(0)
摘要:从测试结果可以看到:msgpack的序列化速度比protobuf要快一些,但反序列化要比protobuf要慢一些,但总体都接近msgpack可以直接序列化类对象,但protobuf需要先写描述映射文件(.proto)msgpack支持的基本类型比protobuf支持的要全面些protobuf的描述文 阅读全文
posted @ 2015-12-17 10:59 孤心诣 阅读(3646) 评论(0) 推荐(0)
摘要:为了适应直接对类对象进行序列化尝试对msgpack、binaryformatter、jsonfx、newtonsoft.json/bson、flatbuffers这些序列库挨个做ios、android、wp下的序列化实验,不能全平台通过,主要是ios与wp不行,其中有几个是在wp app下可以,但在 阅读全文
posted @ 2015-12-16 21:16 孤心诣 阅读(2689) 评论(0) 推荐(0)
摘要:引用对象池的好处:从池中操作对象比直接new、free要性能更快,且能避免内存碎片的堆积先贴对象池的代码: public abstract class ObjectBase { public abstract void Init(params object[] paramL... 阅读全文
posted @ 2015-12-01 20:27 孤心诣 阅读(792) 评论(0) 推荐(0)
摘要:关于非法人员攻击网络底层,会采用两套机制:一、3秒内如果同一个玩家发了超过50个消息包则警告他一次并锁定3秒,为了防治网络拥堵造成的突然1秒或2秒内处理超过50个包的问题而造成误判,所以设置为3秒,警告次数超过3次则强制剔掉他,每次3秒内处理50个包相当于1000的APM,是世界人手速最快记录的2倍... 阅读全文
posted @ 2015-10-29 16:18 孤心诣 阅读(1024) 评论(0) 推荐(0)
摘要:上一篇文章写了关于LegendServer的分布式架构拓扑结构图:http://www.cnblogs.com/legendstudio/p/4917617.html,这篇文章将讲述一个玩家的在接第三方认证平台与第无第三方平台两者的正常登陆流程: 阅读全文
posted @ 2015-10-28 18:09 孤心诣 阅读(1426) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2015-10-28 15:58 孤心诣 阅读(2591) 评论(2) 推荐(2)
摘要:失眠,想点什么呢?文艺屌丝不谈文艺不谈哲学,这次谈架构,不谈细节只说心得,因为觉得还有一些可以改善的,上一次的总结是关于前端的基于模块的轻量MVC框架可以快速搭建,也可以应用于后台业务模块的架构,而这次做分布式后台集群又深刻体会到一点:随时要去平衡,成全什么牺牲什么还是折中处理,既要未雨绸缪又要适可... 阅读全文
posted @ 2015-10-28 15:25 孤心诣 阅读(253) 评论(0) 推荐(0)
摘要:几年前写过C++版本并测试都没问题,见我以前的链接:http://blog.csdn.net/monster877/article/details/23067189现在翻译成C#版本,创建10万个GUID的时间只需要3ms左右,C++的或许速度更快,具体算法如下: 1 using System; 3... 阅读全文
posted @ 2015-10-25 11:49 孤心诣 阅读(618) 评论(0) 推荐(1)
摘要:仔细测试了一下msgpack与zlib的压缩,可以给还在用msgpack又想是否对某些包进行再度压缩的参考msgpack本身会大概压缩4分之1,248个字节时,序列化后大小与用不用zlib压缩都是一样的 大于248字节后用zlib再压就会更小,当用msgpack序列之后为1024个字节用zlib再压... 阅读全文
posted @ 2015-10-13 21:27 孤心诣 阅读(574) 评论(0) 推荐(0)