SERVICE PHONE

363050.com
yongli 永利皇宫
你的位置: 首页 > 永利皇宫
永利皇宫官网- 永利皇宫赌场- 娱乐城基于滴滴云的棋牌游戏服务端架构设计

发布时间:2025-12-01 15:15:45  点击量:

  

永利皇宫官网- 永利皇宫赌场- 永利皇宫娱乐城基于滴滴云的棋牌游戏服务端架构设计

  现在小团队开发的棋牌游戏有很多,棋牌行业的相互攻击是非常普遍的现象,同行之间往往会采取DDOS、CC等攻击的手段来打击对手,这是目前棋牌运营商们面临的比较严峻的一个问题,那么在设计棋牌游戏服务端架构时就需要考虑高可用和抗攻击这两个特性,本文详细介绍了如何基于滴滴云现有的产品组合来设计一套高可用的抗攻击架构。

  由于棋牌类游戏的数据少,计算量不大,所以完全可以不使用内存缓存,而直接使用Redis共享内存。用户的所有数据都缓存永利皇宫官网,永利皇宫赌场,永利皇宫娱乐城,永利皇宫注册,永利皇宫,永利皇宫app,永利皇宫发财车,永利赌场,永利集团,永利娱乐城,永利娱乐场,永利澳门,永利博彩,澳门永利皇宫博彩官网,网上澳门彩官网,澳门永利在Redis中,更新也同步到Redis中,这样一个用户不管登陆到哪一台业务服务器,都能获得自己最新的数据。

  因为棋牌类游戏不分区不分服,在设计服务器的时候,是按世界服的思想去设计,即服务器是一个n多台物理机的集群。当用户登陆服务器创建房间时,可能根据负载均衡算法,它可以在任何一台服务器上面。

  针对可能发生的DDOS攻击以及Web应用层攻击,可以考虑购买DDOS高防以及Web应用防火墙。

  考虑到服务器的负载情况以及用户的状态变化,在用户未进入游戏之前可以采用短连接,进入游戏状态之后采用长连接状态。

  登录,一般都是需要接第三方登陆,登陆这一块是HTTP操作,可以统一提供一个Web服务,用来做登陆验证。因为在登陆时,调用第三方的HTTP服务,这个过程可能很慢,如果放在逻辑服务器的话,可能会卡业务逻辑任务。因为不同的玩家业务请求可能在同一个线程中,如果有任务卡了,那么这个任务以后新来的请求都会卡住,导致消息延迟。

  获取游戏公告,也放在Web服务中。公告一般是游戏登陆的时候向服务器获取一次。把它放在Web服务器中,与业务逻辑分离的好处是,当业务逻辑服务器维护或更新的时候,不影响用户的登陆,和获取公告,这样用户体验会好一些。

  创建用户唯一的ID,因为棋牌类游戏服务器是世界服,无分区,所以用户的ID必须是全局唯一的。可以利用Redis的incr方法原子的递增,如果不想被别人根据userid的递增推算出有多少注册用户,递增的梯度可以随机,比如每次递增的值从1到1024中的随机一个。

  创建房间,当房间主创建房间时,房间可以创建在下游的任意一台业务服务器上,这里面可以做一些负载均衡策略,给用户返回房间具体落得服务器信息,使得玩家可以登入房间。

  查找加入房间,根据房间ID查询房间,查找到房间后,获取房间所在的IP地址或服务器ID,把这个房间所在的IP和端口返回给客户端,让客户端重新与房间所在的服务器建立连接,使用登陆时的token验证用户。

  玩家同屏,玩家同屏是棋牌游戏中的一个重点,对于做过那些大型的ARPG,或MMO游戏的程序员来说,这并不是什么难事。因为同屏就是服务器对客户端的消息进行转发。一个房间四个人,一个人出的牌或操作能被其他三个人同时看到。常用的方式有客户端主动拉取和服务端主动推送方式。

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

  玩家状态跟踪,玩家和服务端之间需要有一个连接状态KeepAlive的探测,尤其是在移动客户端的游戏版本上,网络连接可能存在不稳定。

  很多服务器的长期使用者应该都知道,我们租用服务器,不仅要考虑服务器的配置、机房的防御、机房的带宽、机房的环境,还要考虑机房保证的带宽、机房的后期服务等等,这些都是非常重要的。特别是后期的服务,因为服务器是需要24小时运作的,一旦出现问题不能及时解决的话,对使用者的利益都是有无法估计的损害。

  滴滴云可以提供上述架构所需要的所有产品,而且价格相对比较低,售后支持及时有保障,是一个可以信赖的选择。

地址:永利皇宫永久网址【363050.com】  电话:363050.com 手机:363050.com
Copyright © 2012-2025 永利皇宫网站 版权所有 非商用版本 ICP备案编: