游戏中同步用户状态之
目的:
了解游戏中怎么维护用户状态,和同步每个用户状态机制。
传统方案:
轮询方案:
谈起轮询让我想起,在开发用用到轮询的方案:
B/S开发中怎么理解服务器端的轮询:不论你是采用foreach + Thread.Sleep(xx),还是采用Timer,这一类都可以归结为轮询的处理方案。这种方案不在B/S开发中常见,比如:Discuz!NT对配置文件的处理(在之前看到过,不知道现在版本中是否还保存有),比如:最近公司的开发的项目中采用Windows Service来处理Task的方案,使用了Timer方案。至于开发task为什么采用了windows service,不要质疑,和架构有关的开发,不便和大家一起讨论为什么采用这种方案。
B/S开发中怎么理解客户端的轮询:
(function () { var timerInterval = undefined; /** * creat timer interval object. */ function create(callback, interval) { timerInterval = window.setInterval(callback, interval); } /** * clear timer interval object */ function clear() { window.clearInterval(timerInterval); } window.Timer = window.Timer || {}; window.Timer.create = create; window.Timer.clear = clear; })();
游戏开发中怎么看待轮询:
。。。
基础才是编程人员应该深入研究的问题,比如:
1)List/Set/Map内部组成原理|区别
2)mysql索引存储结构&如何调优/b-tree特点、计算复杂度及影响复杂度的因素。。。
3)JVM运行组成与原理及调优
4)Java类加载器运行原理
5)Java中GC过程原理|使用的回收算法原理
6)Redis中hash一致性实现及与hash其他区别
7)Java多线程、线程池开发、管理Lock与Synchroined区别
8)Spring IOC/AOP 原理;加载过程的。。。
【+加关注】。