[发明专利]数据处理方法及装置在审
申请号: | 201911207100.0 | 申请日: | 2019-11-29 |
公开(公告)号: | CN111013133A | 公开(公告)日: | 2020-04-17 |
发明(设计)人: | 胡良军 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | A63F13/35 | 分类号: | A63F13/35 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理 方法 装置 | ||
本发明实施例提供了一种数据处理方法及装置,其中的方法包括:通过接收第一客户端发送的与第一客户端对应的玩家角色的状态数据、以及状态数据对应的游戏房间标识,从N个消息队列中确定与游戏房间标识对应的目标消息队列,并将状态数据存储到目标消息队列的末尾,每个消息队列绑定一个互不相同的线程,通过与目标消息队列绑定的线程从目标消息队列的头部开始,将状态数据转发至游戏房间标识对应的各个第二客户端。提高了同一个游戏房间各个玩家角色对应的客户端显示的状态数据的有序性的概率。
技术领域
本发明涉及计算机技术领域,特别是涉及数据处理方法及装置。
背景技术
随着游戏技术的发展,开发出的多人实时互动游戏也越来越多,多人实时互动游戏成为玩家休闲娱乐的一种方式。同时玩家也对游戏体验提出了更高要求,例如希望看到的游戏画面与玩家实际操作保持一致。
目前,多人实时互动游戏中,一个游戏房间对应多个客户端,每个客户端对应一个玩家角色,一个游戏房间对应的每个客户端每隔一定时间向服务器发送一次玩家角色的状态数据(状态数据包括玩家角色是否移动、是否跳跃、是否开枪等),服务器每隔预设时间将收到的状态数据同步给一个游戏房间对应的各个客户端。由于预设时间比较小,例如为33毫秒,因此,服务器向客户端同步状态数据会产生大量同步消息。并且如果同时有很多场游戏进行,也即同时存在较多游戏场次,每个游戏场次对应一个游戏房间,则服务器必须使用多线程方式处理,以向每个游戏房间包括的各个玩家角色对应的客户端推送同步消息。
然而目前针对同时有多场游戏时,直接使用java线程池方式,即同步消息分配给线程池后由线程自己处理消息转发,这样导致对于同一场游戏会有帧数据乱序的问题。即可能导致服务器先处理客户端后发送的状态数据,从而导致同一个游戏房间各个玩家角色对应的客户端显示的状态数据错乱的问题。
发明内容
本发明实施例的目的在于提供一种数据处理方法及装置,以提高属于同一游戏房间的状态数据在该游戏房间对应的各个客户端显示的有序性的概率。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种数据处理方法,执行于服务器,包括:
接收第一客户端发送的与所述第一客户端对应的玩家角色的状态数据、以及所述状态数据对应的游戏房间标识;
根据所述游戏房间标识,从N个消息队列中确定与所述游戏房间标识对应的目标消息队列,并将所述状态数据存储到所述目标消息队列的末尾;其中,所述N为大于等于2的整数,所述消息队列为预先创建的,每个所述消息队列绑定一个互不相同的线程;
通过与所述目标消息队列绑定的线程从所述目标消息队列的头部开始,将所述状态数据转发至所述游戏房间标识对应的各个第二客户端。
在本发明实施的第二方面,还提供了一种数据处理方法,执行于服务器,包括:
接收第一客户端发送的秒杀请求;其中,所述秒杀请求包括被秒杀的资源对象的种类标识,所述秒杀请求用于秒杀所述资源对象;
从N个消息队列中确定与所述种类标识对应的目标消息队列,并将所述秒杀请求存储到所述目标消息队列的末尾;其中,所述N为大于等于2的整数,所述消息队列为预先创建的,每个所述消息队列绑定一个互不相同的线程;
通过与所述目标消息队列绑定的线程从所述目标消息队列的头部开始,对所述目标消息队列中存储的秒杀请求进行处理,以获得处理结果,并将所述处理结果发送给被处理的秒杀请求对应的第二客户端。
在本发明实施的第三方面,还提供了一种数据同步装置,设置于服务器,包括:
接收模块,用于接收第一客户端发送的与所述第一客户端对应的玩家角色的状态数据、以及所述状态数据对应的游戏房间标识;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911207100.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:断开式机场摆渡车桥
- 下一篇:音量补偿方法、装置、计算机设备和存储介质