站务联系

棋牌游戏服务器架构设计 深圳服务器托管 深圳服务器租用 高防服务器租用

发布时间:2021-03-10   来源:网络整理    
字号:

全网数据中心,新增高防服务器租用,保障用户服务器及数据安全,有效攻击CC、DDOS攻击,完美擦洗,无限攻击。全网数据中心为您带给最新科技新闻。

一,棋牌类服务器的特征

1,棋牌类不分区不分服

一般来说,棋牌游戏都是不分区不分服的。所以棋牌类服务器要满足随着用户量的提高而扩充的还要。

2,房间方式

即在同一局游戏中就是在同一个书房中,同一个书房中的人可以接收至其他人的消息。

3,每个卧室的操作应当是顺序性

这个特征类似与通常游戏的回合制,每个玩家的操作都是有顺序性的。

二,需要解决的技术点

棋牌游戏服务器架构设计   深圳服务器托管 深圳服务器租用 高防服务器租用redis来做数据共享。

2,如何踏入书房

在同一局游戏中,我们要求所有人都在同一个书房中,我们可以规定在同一个书房中的用户,必须登录至同一台地理服务器前面。在争创书房完成以后,其他人按照书房号查找书房的时侯,可以按照书房号,获取这个屋子所在的服务器ip跟端口,判断一个当前用户登录的服务器ip与书房所在的服务器ip是否相似,如果相似,就不做切换,如果不一样,客户端就使用ip跟端口,连接至屋内所在的服务器旁边。

3,保证屋内操作的顺序性

创建书房成功以后,接下来的操作都要保证它的顺序性,所以书房还要有一个它自己的消息个队列。我们可以把每位书房抵达服务器的消息封装为一个任务,把这个任务放在消息队列中,然后有一个任务执行者去按次序执行某些任务。

三,系统构架

棋牌游戏服务器架构设计   深圳服务器托管 深圳服务器租用 高防服务器租用游戏服务器是世界服,无分区,所以用户的id应当是全局惟一的。可以借助redis的incr方式,原子的递增,如果不想被他人按照userid的递增估算出有多少注册用户,递增的梯度可以随机,比如每天递增的值从1至1024中随机一个。

d,创建书房,当房间主争创书房时,房间的id还要在任何台服务器上可以查询至,所以争创书房成功后,房间id要储存在共享显存redis中,每个卧室id对应一个书房所在的ip地址或服务器id.这样,当有用户要踏入书房,在查询书房id时,可能分辨这个屋子是否跟自己登录的游戏服务器相似。

e,查找加入书房

棋牌游戏服务器架构设计   深圳服务器托管 深圳服务器租用 高防服务器租用

因为棋牌游戏的同步数据量比较小。一般常见的同步模式有两种:

1,客户端主动拉取。

客户端定时主动向服务器恳求一个用户的消息队列,当一个玩家有操作须要同步至其他玩家时,在服务器端先把这个消息传到这个用户的消息队列中。等待客户端的拉取操作。这种模式的弊端是,不需要考虑网路闪断或网路不好的状况,信息都是同步获取的。缺点是,定时拉取的时间间隔太短,可能不到1秒都会拉取一次。

2,服务器主动推送

当一个用户出牌的消息还要同步给其他玩家时,服务器会荣获这个玩家与服务器构建的socket连结,然后服务器使用socket 主动向客户端发送消息。

这种方法要考虑网路闪断,消息遗失的问题。因为服务器推送的消息,客户端有或许会收不到。所以客户端还要按照脉搏来辨别网路是否有断掉过,如果有断掉,需要再次从服务器拉取整个屋子状态的消息。或者按照服务器发送的消息号,如果客户端发觉接收至的服务器消息号有跳号的,比如应当接收10,却收到了12,说明后边有消息遗失棋牌服务器租用,需要再次拉取整个屋子的状态信息。

这种模式的劣势是,开发复杂,需要考虑一些网路问题。优点是,只有在有消息的时侯就会推送,没有的话不推送,不占用时延等系统资源,可以降低用户同时在线量,也就是提高了服务器的承载量。

棋牌游戏服务器架构设计   深圳服务器托管 深圳服务器租用 高防服务器租用深圳服务器托管,深圳服务器租用】

图说天下

×
二维码生成