游戏服务器
细听风声
思绪如风,来得快,去的也快。
展开
-
游戏服务器线程模型
游戏主线程: 处理活动请求,系统进阶等非场景且不涉及数据库操作的请求。 场景线程: 一个场景可以绑定一个线程,或者多个场景绑定一个线程,场景有关的所有请求包括战斗请求都会在场景线程里顺序执行,单线程执行执行线程安全。 属性计算线程: 玩家设计到属性计算的,都将添加到属性计算里进行计算,玩家的属性计算好应该推送到场景线程,避免跟场景战斗请求冲突。 异步加载线程: 涉及到数据库加载都用这...原创 2020-03-06 19:34:34 · 761 阅读 · 0 评论 -
游戏服务器如何保证单个玩家是消息顺序处理?
两种方案: 方案一(这是我们服务器目前使用的方法): 使用netty,mina派发给一个线程执行器,让所有玩家消息单线程环境下执行,那么每个玩家的消息就能保证顺序性了。每个玩家在netty或者mina中都是一个会话,会话里面的消息是可以保证顺序执行的。然后再添加到主线程绑定的消息队列,同时唤醒主线程。主线程会取出队列里面的消息执行。 方案二: netty,mina根据玩家roleId从消息...原创 2020-03-06 18:04:52 · 757 阅读 · 0 评论