摘要: 从事棋牌游戏三年,一直不知道原来我们游戏使用的服务端编程的专业术语叫状态同步。 状态同步: 服务端:保存的是整个场景实时的状态。对各个对象实体用一些变量描述它当前的状态。 优点:网络流量消耗较小 缺点:当场景里实体对象很多时,需要保存的内存数据就会大大增加。并且不一定可控。 帧同步: 服务端:保存一 阅读全文
posted @ 2017-08-07 16:07 leejuen 阅读(701) 评论(0) 推荐(0) 编辑
摘要: 昨天突然顿悟了下,游戏服务端事实上并没有复杂的业务逻辑。服务端要做的事其实就是简单的接受消息和把消息转发给对的人。而服务端只是要保存一个名为游戏状态的东西。这个东西表示当前玩家所处的状态。为什么要有这个东西,主要是因为服务器时不能无条件的信任玩家所发出的信息。必须通过一些手段来检验兼容性和正确性。 阅读全文
posted @ 2016-06-15 09:45 leejuen 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 分布式棋牌游戏服务器中常有n个DBSvr,n个GateWay,n个GameSvr,1个LobbyServer,1个LoginSvr。详见下图: 其他几个都很好理解,但DBMgr或者叫DBSvr的作用是啥?这个我不是特别清楚。从前在金证实习时,李工曾经和我说过大并发情况下他们会将n个sql存起来作为事 阅读全文
posted @ 2016-06-07 08:42 leejuen 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 大致已经基本成型。详见源码: https://github.com/leejuen/JavaGameServer 阅读全文
posted @ 2016-06-06 20:33 leejuen 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 这周解决了几个问题。 1.高并发时多线程处理时的问题,原来设计的时候是每个gamer绑定了一个channel,每个gamer都有一个消息队列。一个时间片中只处理了每个gamer的一条请求。我将其修改成了,一个时间片中处理完所有这个时间片中发出的请求。这样极大地增加了效率。 2.使用了PooledBy 阅读全文
posted @ 2016-06-05 20:53 leejuen 阅读(216) 评论(0) 推荐(1) 编辑
摘要: 原文引自 http://www.cnblogs.com/moondark/p/3607825.html#commentform 感觉挺漂亮的,就是手机上适配出了问题 请教了公司前端大牛。学习了下前端适配解决的思路 1.查看排版问题 2.查看是不是那个块出了问题。 3.试着改CSS样式表 具体来说我用 阅读全文
posted @ 2016-05-31 23:23 leejuen 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 作为一个干了快一年半的客户端。有时候我总是在想游戏的服务端是怎么实现的呢~或者说我要如何撸出一个服务端来呢? 由于之前有做web的经验和大学时写过一个聊天室程序。我想大不了是个实现在tcp上的长连接嘛。 嗯!首先我要实现两端通信(这不是废话嘛)。 我列了下初期要做的工作大致是 1.技术的选型。由于我 阅读全文
posted @ 2016-05-31 09:02 leejuen 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 1.设计目标 将ui与逻辑分离 不依赖与cocos2dx,使用消息-订阅模式 2.支持长监听、一次性监听、支持多事件池,防止事件池中消息过多。发消息会有O(n)的延迟 3.采用java 中的 hash 算法 分离事件 --[[ @brief:事件分发器 @by 李俊 ]] --[[ 例如我在主场景中 阅读全文
posted @ 2016-04-01 16:24 leejuen 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 1.UI栈的由来 由于写cocos2dx时很多时候你不想按安卓返回键退出。这时候你需要做的是模拟安卓原生方式 模拟安卓Activity的操作 1.让所有UI界面继承UIObject基类。 2.在UIObject基类中实现安卓返回键触发。 --[[ @brief 此处定义一些对UI进行操作的公共函数 阅读全文
posted @ 2016-04-01 13:39 leejuen 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 版本cocos2dx3.3 1.设计分辨率 你配资源使用的分辨率大小,一般是960*640。 2.屏幕分辨率 实际上用户屏幕的分辨率大小。 想要了解更多建议阅读http://www.tairan.com/archives/6508/的文章 你需要了解的有: ResolutionPolicy::SHO 阅读全文
posted @ 2016-03-30 18:28 leejuen 阅读(6405) 评论(0) 推荐(0) 编辑