手游服务端框架之每日重置逻辑

大部分游戏都有每日重置的逻辑。关于每日重置,我们需要考虑两个问题。一个是如何区别在线玩家和离线玩家,一个是保证业务的线程安全的。本文提供一种方式,比较简单地实现了重置业务。...
阅读(65) 评论(0)

手游服务端框架之客户端协议组合下发

有时一个客户端请求,服务端可能需要下发多个响应消息。针对这种情况,比较好的优化方式是整合多个小消息一起下发。也就是说,对于多个消息,我们不直接一个一个下发,而是把多个消息看作一个特殊的消息组合下发。...
阅读(234) 评论(0)

手游服务端框架之后台管理工具

对于生产环境的游戏进程,我们必须有工具能够对游戏服务进行维护,例如更新维护,或者对游戏内部各种资源进行管理。典型地,完成这种任务的系统被称为后台管理工具。本文将使用http服务来构建一个后台管理服务的接口。...
阅读(369) 评论(0)

手游服务端框架之使用事件驱动模型解决业务高耦合

游戏里经常有这样的业务,当玩家触发某个动作时,有若干与之关联的业务也要一起执行。诸如这样场景,我们选择引入事件驱动模型来帮助我们解决业务代码耦合的问题。本文实现一个工具库,来解决监听器与事件多对多的关联问题。...
阅读(339) 评论(0)

Netty网络聊天室之使用spring管理各种组件

spring是web开发的宠儿,不管mvc框架选择structs还是SpringMVC,IOC容器都是选择Spring。Spring有两个主要的作用,一个是IOC(依赖反转),另一个是AOP(面向切面编程)。在我们的聊天室,我们也将使用Spring容器来管理各种组件。...
阅读(229) 评论(0)

Netty网络聊天室之会话管理

浏览器第一次与服务器建立连接的时候,服务器就会自动为之分配一个Session。在我们的聊天室,也可以使用Session来判断用户是否经过登录验证,保存用户的各种信息,向客户端发送消息。这极大方便了程序对客户端的管理。...
阅读(2893) 评论(10)

手游服务端框架之GM金手指的设计

游戏开发需要一些命令,能够像金山游侠这种软件一样,修改游戏里的玩家或公共服务的数据。在游戏项目里,这些命令统称为GM命令。本文将介绍实现gm系统的一种方式。...
阅读(399) 评论(0)

手游服务端框架之使用Guava构建缓存系统

缓存,在项目中的应用非常之广泛。诸如这样的场景,某些对象计算或者获取的代码比较昂贵,并且在程序里你不止一次要用到这些对象,那么,你就应该使用缓存。缓存,在项目中的应用非常之广泛。诸如这样的场景,某些对象计算或者获取的代码比较昂贵,并且在程序里你不止一次要用到这些对象,那么,你就应该使用缓存。...
阅读(350) 评论(0)

手游服务端框架之配置与玩家数据库设计

一款网络游戏的设计,至少需要策划数据库和用户数据库两种数据库。本文主要介绍这两种数据库的设计及使用,同时,介绍如何通过ORM框架来完成玩家数据的持久化。...
阅读(1505) 评论(2)

手游服务端框架之消息线程模型

玩家的消息请求如果放在mina的io线程池进行处理,当业务处理非常耗时,会严重影响io的吞吐量。所以,我们应该另起用于处理业务逻辑的线程池,采用生产者消费者模型,异步处理玩家请求。...
阅读(1621) 评论(2)

手游服务端框架之使用控制器来处理玩家消息

经典web开发项目通常采用三层架构来组织代码。典型的,第一层为表现层,通常使用MVC模式;第二层为业务逻辑层,该层主要是各种service业务操作类;第三层则为数据访问层。类似的,我们的游戏项目也可以采用上面的三层架构,使用Controller注解对应MVC模式的控制器,使用RequestMapper注解对应的消息处理。...
阅读(681) 评论(0)

手游服务端框架之网关

游戏服务器的网关,主要是用于手机客户端与游戏业务服务端通信的中转器,负责接收来自手机客户端的请求协议,以及推送服务端的响应包。在建立socket连接之后,服务端需要知道客户端发来的数据流是什么含义,同时,客户端也要能知道服务端推送的数据内容。这便有了消息编码器解码器的设计。...
阅读(1094) 评论(2)

游戏开发的艰辛历程与升级展望

从第一款游戏《贪吃蛇》开始,到《水果忍者》、《时空猎人》,再到如今风靡全国的《王者荣耀》,手机游戏迎来了百花齐放的繁华时代。怀着对游戏行业的热爱,一批一批游戏开发大军加入了队伍。即使从业道路很艰辛,我们还是一如初衷,希望在奉献自己力量的同时,能够从中收获财富与自我成长。...
阅读(528) 评论(0)

游戏服务端防御式开发

游戏服务端承担着游戏复杂业务逻辑实现,玩家数据持久化等重要作用。作为一个合格的服务端开发人员,我们有必要遵守一些好的防御手段,让自己的代码少踩些坑,或者当出现了bug,能够在第一时间进行抢救。本文是我在开发过程中的经验总结。...
阅读(945) 评论(0)

理解Go的Goroutine和channel

go的goroutine和channel组合为解决并发场景提供了新的实现手段。本文主要是帮助读者更好地理解goroutine和channel两个概念。...
阅读(439) 评论(0)
44条 共3页1 2 3 下一页 尾页
    个人资料
    • 访问:111273次
    • 积分:1540
    • 等级:
    • 排名:千里之外
    • 原创:41篇
    • 转载:0篇
    • 译文:0篇
    • 评论:36条
    博客专栏
    最新评论