咨询邮箱 咨询邮箱:1947790376@qq.com 咨询热线 咨询热线:0371-56752222 微博 微信
棋牌游戏服务器架构详解及要点(上篇)
发表日期:2017-11-28    来源:帝通科技http://www.9dm.cn    浏览次数:
棋牌游戏是当下热门的游戏类型之一,许多游戏厂商纷纷加入到开发和运营棋牌游戏的队伍中。有关棋牌游戏的运行,就不得不提服务器的架构设计等问题。毕竟棋牌游戏需要考虑到游戏服务器的分配和运行模式的设计。下面我们就来看看棋牌游戏服务器的架设要点。
  游戏观察消息,棋牌游戏是当下热门的游戏类型之一,许多游戏厂商纷纷加入到开发和运营棋牌游戏的队伍中。有关棋牌游戏的运行,就不得不提服务器的架构设计等问题。毕竟棋牌游戏需要考虑到服务器的分配和运行模式的设计。下面我们就来看看棋牌游戏服务器的架设要点。
 
一、棋牌类服务器的特点
 
  1、棋牌类不分区不分服
 
  一般来说,棋牌游戏都是不分区不分服的。所以棋牌类服务器要满足随着用户量的增加而扩展的需要。
 
  2、房间模式
 
  即在同一局游戏中就是在同一个房间中,同一个房间中的人可以接收到其他人的消息。
 
  3、每个房间的操作必须是顺序性
 
  这个特性类似与一般游戏的回合制,每个玩家的操作都是有顺序性的。
棋牌游戏服务器架构详解
 

二、需要解决的技术点

  1、数据共享
 
  因为棋牌类游戏不分区不分服,我们在设计服务器的时候,是按世界服的思想去设计,即服务器是一个n多台物理机的集群。当用户登陆服务器,创建房间时,可能根据负载均衡算法,它可以在任何一台服务器上面。所以,不管用户登陆到哪一台服务器上面了,都可以获得自己的数据。我们可以使用redis来做数据共享。
 
  2、如何进入房间
 
  在同一局游戏中,我们要求所有人都在同一个房间中,我们可以规定在同一个房间中的用户,必须登陆到同一台物理服务器上面。在创建房间完成之后,其他人根据房间号查找房间的时候,可以根据房间号,获取这个房间所在的服务器ip和端口,判断一个当前用户登陆的服务器ip与房间所在的服务器ip是否相同,如果相同,就不做切换,如果不一样,客户端就使用ip和端口,连接到房间所在的服务器上面。
 
  3、保证房间操作的顺序性
 
  创建房间成功之后,接下来的操作都要保证它的顺序性,所以房间需要有一个它自己的消息个队列。我们可以把每个房间到达服务器的消息封装为一个任务,把这个任务放到消息队列中,然后有一个任务执行者去按顺序执行这些任务。
 
简要介绍棋牌游戏服务器的架构设计要点
 
下篇:棋牌游戏服务器架构详解及要点(下篇)
 
本文链接:http://www.9dm.cn/industry/289.html转载请注明。
标签:棋牌游戏服务器,棋牌游戏架构,棋牌游戏设计


上一篇:手游卡牌类游戏服务器的架构详解(下) 下一篇:棋牌游戏服务器架构详解及要点(下篇)