CN109525627A - 数据传输方法、装置、存储介质及电子装置 - Google Patents
数据传输方法、装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN109525627A CN109525627A CN201710856262.1A CN201710856262A CN109525627A CN 109525627 A CN109525627 A CN 109525627A CN 201710856262 A CN201710856262 A CN 201710856262A CN 109525627 A CN109525627 A CN 109525627A
- Authority
- CN
- China
- Prior art keywords
- data
- server
- request
- client
- time scenario
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种数据传输方法、装置、存储介质及电子装置。其中,该方法包括:第一服务器接收登录到第一服务器的客户端发送的第一数据请求,其中,第一数据请求用于请求在客户端上显示第二服务器上的当前运行场景;第一服务器发送第二数据请求至第二服务器,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中的数据;第一服务器向客户端发送当前运行场景中的数据。本发明解决了现有技术中数据传输过程中服务器承载较高的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种数据传输方法、装置、存储介质及电子装置。
背景技术
随着互联网技术的飞速发展,人们的网络生活越来越丰富,可以在网络观看直播,演唱会,体育比赛,游戏赛事等等,在这些活动进行的过程中,往往有大量的观众会同时进行收看,从而会由于CPU/内存/网络等各方面的综合压力导致系统的整体承载有限。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据传输方法、装置、存储介质及电子装置,以至少解决现有技术中数据传输过程中服务器承载较高的技术问题。
根据本发明实施例的一个方面,提供了一种数据传输方法,包括:第一服务器接收登录到所述第一服务器的客户端发送的第一数据请求,其中,所述第一数据请求用于请求在所述客户端上显示第二服务器上的当前运行场景;所述第一服务器发送第二数据请求至所述第二服务器,其中,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;所述第一服务器获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中的数据;所述第一服务器向所述客户端发送所述当前运行场景中的数据。
根据本发明实施例的另一方面,还提供了一种数据传输方法,包括:第二服务器接收第一服务器发送的第二数据请求,其中,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;所述第二服务器响应所述第二数据请求获取所述当前运行场景中的数据;所述第二服务器将所述当前运行场景中的数据发送至所述第一服务器。
可选地,所述第二服务器响应所述第二数据请求获取所述当前运行场景中的数据;所述第二服务器将所述当前运行场景中的数据发送至所述第一服务器包括:所述第二服务器响应所述第二数据请求在所述当前运行场景中获取所述当前运行场景中的数据包括的第一数据,其中,所述第一数据用于指示所述第二服务器接收到所述第一数据请求时所述当前运行场景的状态;所述第二服务器向所述第一服务器发送所述第一数据;在采集所述第一数据之后,所述第二服务器获取所述当前运行场景中的数据包括的第二数据,其中,所述第二数据为所述第二服务器获取所述第一数据之后所述当前运行场景中生成的数据;所述第二服务器向所述第一服务器发送所述第二数据。
可选地,所述第二服务器响应所述第二数据请求获取所述当前运行场景中的数据包括:所述第二服务器获取所述第一服务器发送的用于指示预设区域的信息,其中,所述预设区域为向所述第一服务器请求显示所述当前运行场景中的数据的客户端指定的所述当前运行场景中的区域;所述第二服务器获取所述当前运行场景中所述预设区域内的数据
根据本发明实施例的另一方面,还提供了一种数据传输方法,包括:客户端发送第一数据请求至第一服务器,其中,所述第一数据请求用于请求在所述客户端上显示当前运行场景中的数据,所述客户端在所述第一服务器上登录,所述当前运行场景为在第二服务器中当前运行的场景;所述客户端接收所述第一服务器响应所述第一数据请求发送的所述当前运行场景中的数据,其中,所述当前运行场景中的数据为所述第二服务器响应所述第一服务器发送的第二数据请求向所述第一服务器发送的数据,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;所述客户端根据接收到的所述当前运行场景中的数据显示所述当前运行场景。
根据本发明实施例的另一方面,还提供了一种数据传输装置,应用于第一服务器,包括:第一接收模块,用于接收登录到所述第一服务器的客户端发送的第一数据请求,其中,所述第一数据请求用于请求在所述客户端上显示第二服务器上的当前运行场景;第一发送模块,用于发送第二数据请求至所述第二服务器,其中,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;第一获取模块,用于获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中的数据;第二发送模块,用于向所述客户端发送所述当前运行场景中的数据。
根据本发明实施例的另一方面,还提供了一种数据传输装置,应用于第二服务器,包括:第二接收模块,用于接收第一服务器发送的第二数据请求,其中,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;第二获取模块,用于响应所述第二数据请求获取所述当前运行场景中的数据;第三发送模块,用于将所述当前运行场景中的数据发送至所述第一服务器。
根据本发明实施例的另一方面,还提供了一种数据传输装置,应用于客户端,包括:第四发送模块,用于发送第一数据请求至第一服务器,其中,所述第一数据请求用于请求在所述客户端上显示当前运行场景中的数据,所述客户端在所述第一服务器上登录,所述当前运行场景为在第二服务器中当前运行的场景;第三接收模块,用于接收所述第一服务器响应所述第一数据请求发送的所述当前运行场景中的数据,其中,所述当前运行场景中的数据为所述第二服务器响应所述第一服务器发送的第二数据请求向所述第一服务器发送的数据,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;显示模块,用于根据接收到的所述当前运行场景中的数据显示所述当前运行场景。
根据本发明实施例的另一方面,还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序运行时执行上述任一项中所述的方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器通过所述计算机程序执行上述任一项中所述的方法。
在本发明实施例中,第一服务器接收登录到第一服务器的客户端发送的第一数据请求,其中,第一数据请求用于请求在客户端上显示第二服务器上的当前运行场景;第一服务器发送第二数据请求至第二服务器,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中的数据;第一服务器向客户端发送当前运行场景中的数据。也就是说,客户端登陆的第一服务器接收到客户端发送的第一数据请求后,向客户端请求显示的场景所在的第二服务器发送第二数据请求以请求获取该场景的数据,该场景为第二服务器上当前运行场景,由第二服务器获取该场景的数据并返回给第一服务器,第一服务器将接收到的数据发送给发起请求的客户端,从而避免了将发起请求的客户端传送至发生请求的场景的第二服务器,而是由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的数据传输方法的应用环境示意图;
图2是根据本发明实施例的一种可选的数据传输方法的示意图一;
图3是根据本发明实施例的一种可选的数据传输方法的示意图二;
图4是根据本发明实施例的一种可选的数据传输方法的示意图三;
图5是根据本发明可选实施方式的一种可选的数据传输方法的示意图;
图6是根据本发明实施例的一种可选的配置对象的更新装置的示意图一;
图7是根据本发明实施例的一种可选的配置对象的更新装置的示意图二;
图8是根据本发明实施例的一种可选的配置对象的更新装置的示意图三;
图9是根据本发明实施例的一种可选的数据传输方法的应用场景示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本发明实施例中,提供了一种上述数据传输方法的实施例。作为一种可选的实施方式,该数据传输方法可以但不限于应用于如图1所示的应用环境中,客户端102通过网络106与第一服务器104连接,第一服务器104连接通过网络108与第二服务器110连接,
第一服务器104用于接收登录到第一服务器104的客户端102发送的第一数据请求,其中,第一数据请求用于请求在客户端102上显示第二服务器110上的当前运行场景;发送第二数据请求至第二服务器110,其中,第二数据请求用于请求获取第二服务器110上的当前运行场景中的数据;获取第二服务器110响应第二数据请求返回的当前运行场景中的数据;向客户端102发送当前运行场景中的数据。
第二服务器110用于接收第一服务器104发送的第二数据请求;响应第二数据请求获取当前运行场景中的数据;将当前运行场景中的数据发送至第一服务器104。
客户端102用于发送第一数据请求至第一服务器104;接收第一服务器104响应第一数据请求发送的当前运行场景中的数据;根据接收到的当前运行场景中的数据显示当前运行场景。
在本实施例中,客户端102登陆的第一服务器104接收到客户端102发送的第一数据请求后,向客户端102请求显示的场景所在的第二服务器110发送第二数据请求以请求获取该场景的数据,该场景为第二服务器110上当前运行场景,由第二服务器110获取该场景的数据并返回给第一服务器104,第一服务器104将接收到的数据发送给发起请求的客户端102,从而避免了将发起请求的客户端传送至发生请求的场景的第二服务器,而是由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
可选地,在本实施例中,上述客户端可以包括但不限于以下至少之一:手机、平板电脑、笔记本电脑、台式PC机、数字电视及其他进行区域共享的硬件设备。上述网络可以包括但不限于以下至少之一:广域网、城域网、局域网。上述只是一种示例,本实施例对此不做任何限定。
根据本发明实施例,提供了一种数据传输方法,如图2所示,该方法包括:
S202,第一服务器接收登录到第一服务器的客户端发送的第一数据请求,其中,第一数据请求用于请求在客户端上显示第二服务器上的当前运行场景中的数据;
S204,第一服务器发送第二数据请求至第二服务器,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
S206,第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中的数据;
S208,第一服务器向客户端发送当前运行场景中的数据。
可选地,在本实施例中,上述数据传输方法可以但不限于应用于客户端请求显示服务器上当前运行场景中的数据的场景。其中,上述客户端可以但不限于为各种类型的软件,例如,在线教育软件客户端、视频软件客户端、即时通讯软件客户端、直播软件客户端、游戏软件客户端等。具体的,可以但不限于应用于在上述游戏软件客户端请求观战游戏赛事的场景中,或还可以但不限于应用于在上述视频软件客户端请求收看视频直播的场景中,以减轻了第二服务器的承载压力。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,以客户端请求观看游戏对战为例,第一服务器可以是承载客户端业务的服务器,第二服务器可以是承载游戏对战的服务器。
可选地,在本实施例中,上述第二服务器上当前运行场景可以但不限于包括第二服务器上承载的视频直播、第二服务器上承载的游戏对战、第二服务器上承载的体育赛事直播等等。
可选地,在本实施例中,第二服务器上当前运行场景中的数据可以但不限于包括该场景的第一属性数据、场景中的对象的第二属性数据以及第一属性数据和第二属性数据的变化数据。举个例子来说,以一场游戏赛事为例,当前运行场景中的数据可以包括这场比赛所在的场景中本身的数据(比如本场比赛所用地图数据、地图中建筑、地形、环境等数据等等)、场景中对战双方玩家的数据(玩家的装备、等级、角色信息等等)以及玩家或者场景的变化数据(比如玩家释放技能、走位等数据,场景中建筑或其他事物发生的变化,比如房子的门被撞掉等等)。
可见,通过上述步骤,客户端登陆的第一服务器接收到客户端发送的第一数据请求后,向客户端请求显示的场景所在的第二服务器发送第二数据请求以请求获取该场景的数据,该场景为第二服务器上当前运行场景,由第二服务器获取该场景的数据并返回给第一服务器,第一服务器将接收到的数据发送给发起请求的客户端,从而避免了将发起请求的客户端传送至发生请求的场景的第二服务器,而是由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
作为一种可选的方案,第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中的数据包括:
S1,第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中的数据包括的第一数据,其中,第一数据用于指示第二服务器接收到第二数据请求时当前运行场景的状态;
S2,第一服务器获取第二服务器发送的当前运行场景中的数据包括的第二数据,其中,第二数据为第二服务器采集第一数据之后当前运行场景中生成的数据。
可选地,在本实施例中,第一数据用于指示第二服务器接收到第二数据请求时当前运行场景的状态。当前运行场景的状态可以包括该场景当前的属性信息、场景中对象当前的属性信息等等。例如:在客户端请求观战游戏比赛的场景中,第一数据可以是战斗场景的瞬间状态数据,包括了玩家、场景地貌、所处区域等信息。
可选地,在本实施例中,第二数据为第二服务器采集第一数据之后当前运行场景中生成的数据。第一数据之后当前运行场景中生成的数据可以是场景或者场景中的对象新生成的数据。例如:在客户端请求观战游戏比赛的场景中,第二数据可以指的是新发生的事情产生的数据,如角色走了一步、角色施放了一个技能、角色死亡等。
通过上述步骤,第一服务器首先从第二服务器获取用于指示该场景当前状态的第一数据,从而获得了该场景的整体情况,再获取场景中新生成的数据,已获取到场景中的变化情况,使得第二服务器不必重复的发送场景的整体状态数据,只需在获取的第一数据的基础上获取场景中的变化数据即可,从而减轻了第二服务器的承载压力。
作为一种可选的方案,第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中的数据包括:
S1,第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中预设区域内的数据,其中,预设区域为客户端指定的区域。
可选地,在本实施例中,第二服务器返回的数据可以是当前运行场景中预设区域内的数据,也就是说,第二服务器不必获取整个场景中的全部数据,只需要获取客户端关心的区域的数据即可。
可选地,在本实施例中,预设区域可以但不限于为客户端指定的区域,客户端指定区域的方式可以是由客户端对显示的区域进行选择,也可以是根据客户端所在的位置进行检测得到的,或者是可以根据客户端的移动对区域进行转换。
例如:在第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中预设区域内的数据之前,第一服务器可以获取客户端指定的预设区域;第一服务器向第二服务器发送用于指示预设区域的信息。
可见,通过上述步骤,由客户端指定获取数据的区域,从而避免了对整个场景的数据进行传输,减少了第二服务器的承载压力,也使得场景的显示更加灵活。
作为一种可选的方案,第一服务器获取客户端发送的第一数据请求包括:
S1,第一服务器在预设时间内获取多个客户端发送的多个第一数据请求;
S2,第一服务器响应于多个第一数据请求生成一个第二数据请求;
S3,第一服务器发送一个第二数据请求至第二服务器。
可选地,在本实施例中,第一服务器可以在接收第一数据请求和发送第二数据请求之间,执行一个预设时间的延时,从而对于请求显示同一场景的第一数据请求只需向第二服务器发送一个第二数据请求即可,从而减少了数据传输量,也减轻了第二服务器的承载压力。
可选地,在本实施例中,多个第一数据请求可以但不限于是请求显示同一场景数据的请求,或者可以是请求显示同一场景下同一预设区域的数据的请求。可以由第一服务器对客户端发起的请求进行分类。
可见,通过上述步骤,第一服务器对于预设时间内接收到的第一数据请求只需向第二服务器发送一个第二数据请求即可,从而降低了数据传输量,也减少了第二服务器的承载压力。
作为一种可选的方案,第一服务器接收登录到第一服务器的客户端发送的第一数据请求包括以下之一:
S1,第一服务器检测当前接收当前运行场景中的数据的数据流量;在数据流量未超过预设数据流量的情况下,第一服务器接收登录到第一服务器的客户端发送的第一数据请求;
S2,第一服务器检测当前待发送当前运行场景中的数据的任务数量;在任务数量未超过预设任务数量的情况下,第一服务器接收登录到第一服务器的客户端发送的第一数据请求。
可选地,在本实施例中,以游戏观战为例,通过在第一服务器上检测同步流量并与阀值作比较,可主动限制甚至减少观战人数,控制观战开销在全局资源中的占比,使得在提高观战人数上限的前提下又不会降低各节点(包括第一服务器、第二服务器、客户端及各传输链路)的稳定性,并且不会影响到非观战玩家的体验。例如在战斗场景的战斗状况比较复杂的情况下,可能会导致同步的流量较大,此时如果发现观战流量超过了系统预设限制的70%,观战系统会主动地禁止新玩家发起观战;若超过了预设的80%,观战系统会主动地将部分观战玩家停止观战,直到流量占比下降到70%以下为止。
根据本发明实施例,还提供了一种数据传输方法,如图3所示,该方法包括:
S302,第二服务器接收第一服务器发送的第二数据请求,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
S304,第二服务器响应第二数据请求获取当前运行场景中的数据;
S306,第二服务器将当前运行场景中的数据发送至第一服务器。
可选地,在本实施例中,第二服务器无需针对客户端进行数据的传输,只需响应第一服务器发送的第二数据请求对数据进行获取和传输即可,从而降低了第二服务器的承载压力。
以游戏观战为例,在常规方案中,观战数据是针对每个观战者的客户端单独发送的,这样会给第二服务器到第一服务器的传输链路带来很大的网络流量开销。在本实施例中,可以让同一个第一服务器上的观战者客户端公用一份下行数据,可以让该链路保持稳定而且较低的流量。
可见,通过上述步骤,客户端登陆的第一服务器向客户端请求显示的场景所在的第二服务器发送第二数据请求以请求获取该场景的数据,该场景为第二服务器上当前运行场景,由第二服务器获取该场景的数据并返回给第一服务器,从而避免了将发起请求的客户端传送至发生请求的场景的第二服务器,而是由第二服务器将获取到的数据发送给第一服务器,再由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
作为一种可选的方案,第二服务器响应第二数据请求获取当前运行场景中的数据;第二服务器将当前运行场景中的数据发送至第一服务器包括:
S1,第二服务器响应第二数据请求在当前运行场景中获取第一数据,其中,第一数据用于指示第二服务器接收到第一数据请求时当前运行场景的状态;
S2,第二服务器向第一服务器发送第一数据;
S3,在采集第一数据之后,第二服务器获取当前运行场景中的第二数据,其中,第二数据为第二服务器获取第一数据之后当前运行场景中生成的数据;
S4,第二服务器向第一服务器发送第二数据。
可选地,在本实施例中,当前运行场景中的数据包括第一数据和第二数据。
可选地,在本实施例中,第二服务器获取第一数据并实时将获取到的第一数据发送给第一服务器,在第二服务器获取到第二数据时,再将第二数据实时传输给第一服务器,从而实现了数据的同步传输。
作为一种可选的方案,第二服务器响应第二数据请求获取当前运行场景中的数据包括:
S1,第二服务器获取第一服务器发送的用于指示预设区域的信息,其中,预设区域为向第一服务器请求显示当前运行场景中的数据的客户端指定的当前运行场景中的区域;
S2,第二服务器获取当前运行场景中预设区域内的数据。
可选地,在本实施例中,第二服务器可以根据客户端需要显示的区域获取场景中的数据。从而减少了数据的传输量。
根据本发明实施例,还提供了一种数据传输方法,如图4所示,该方法包括:
S402,客户端发送第一数据请求至第一服务器,其中,第一数据请求用于请求在客户端上显示当前运行场景中的数据,客户端在第一服务器上登录,当前运行场景为在第二服务器中当前运行的场景;
S404,客户端接收第一服务器响应第一数据请求发送的当前运行场景中的数据,其中,当前运行场景中的数据为第二服务器响应第一服务器发送的第二数据请求向第一服务器发送的数据,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
S406,客户端根据接收到的当前运行场景中的数据显示当前运行场景。
可见,通过上述步骤,客户端登陆的第一服务器接收到客户端发送的第一数据请求后,向客户端请求显示的场景所在的第二服务器发送第二数据请求以请求获取该场景的数据,该场景为第二服务器上当前运行场景,由第二服务器获取该场景的数据并返回给第一服务器,第一服务器将接收到的数据发送给发起请求的客户端,从而避免了将发起请求的客户端传送至发生请求的场景的第二服务器,而是由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
作为一种可选的方案,客户端接收第一服务器响应第一数据请求发送的当前运行场景中的数据;客户端根据接收到的当前运行场景中的数据显示当前运行场景包括:
S1,客户端接收第一服务器发送的当前运行场景中的数据包括的第一数据,其中,第一数据用于指示第二服务器接收到第一数据请求时当前运行场景的状态;
S2,客户端加载第一数据,得到第一数据指示的当前运行场景的状态;
S3,客户端接收第一服务器发送的当前运行场景中的数据包括的第二数据,其中,第二数据为第二服务器获取第一数据之后当前运行场景中生成的数据;
S4,客户端在第一数据指示的当前运行场景的状态中加载第二数据,得到当前运行场景。
可选地,在本实施例中,客户端接收到第一数据后将第一数据进行显示,当接收到第二数据时,再在第一数据的基础上显示第二数据,从而实现场景的同步显示。
作为一种可选的方案,客户端接收第一服务器响应第二数据请求发送的当前运行场景中的数据包括:
S1,客户端向第一服务器指定预设区域;
S2,客户端接收第一服务器发送的当前运行场景中预设区域内的数据。
可选地,在本实施例中,客户端向第一服务器指定预设区域的方式可以为客户端向第一服务器发送预设区域的指示信息,还可以是客户端将当前请求显示的区域在场景中的位置发送给第一服务器。
在一个可选的实施方式中,以游戏观战为例,比赛开始后,例如锦标赛64强决定后,玩家可以在赛程界面上查看进行中的比赛。并选择观战目标,即点选比赛,可以加入观战聊天室,此时可以与同在聊天室内的其他玩家交流。比赛正式开始后,观战按钮点亮,此时点击即进入观战模式。观战效果与实际在场景中观看一致,且可以自由切换观战对象,以第一人称观看比赛。观战过程中,玩家仍可以在聊天室中发言。
在一个可选示例中提供了一种数据传输方法,具体结合图5对数据传输过程进行说明。
在本可选示例中,以游戏观战为例,目前大部分游戏的观战都是将观战者直接传入到战斗场景中,还有少部分通过划分维度的优化方案。把观战玩家直接传到战斗场景中,直接观看比赛。这种情况下,观战者和对抗者都是以同样的方式存在于场景中,即可以互相看到或者进行各种交流,只是在逻辑层面上对他们进行了区分处理,使得只有对抗者才能够执行与比赛相关的动作。把场景划分成多个纬度,如战斗维度和观战纬度,不同维度之间应用不同的同步策略。战斗维度中的角色可以执行各种动作,产生数据同步给当前维度的角色以及其他维度。观战维度中的角色不能执行大部分的动作,不产生同步数据,但接受来自战斗维度的同步数据。把观战玩家传送到战斗场景的观战维度上,这样可以使观战玩家看到但又不会影响到战斗过程,同时也减少了需要同步的数据量。
对于上述直接传输观战者的方案,因为观战角色跟比赛角色都是以同样的方式存在于战斗场景中,战斗场景的各种逻辑都会同样地作用于这两种角色,如比赛角色施放的技能、区域喊话等,在影响了比赛的正常进行以外,还带来CPU和内存上的额外开销。同时场景中角色越多,产生的数据量也就越大,会带来网络带宽的压力。这种方式实现性能开销较大,导致承载较低,一般为一两百左右。
对于上述划分观战维度的方案,维度划分需要大量额外的代码支持,开发量比较大,实现成本高。同时观战角色仍然是处于战斗场景中,受目标场景的承载容量限制(由内存、CPU等综合决定),观战人数比较有限,一般为千级别。
在本可选示例中,通过架构、同步方式、请求处理方式、监控处理等方面的优化,解决了性能和承载等方面遇到的困难,从而使在观战玩家增加时,在确保优秀体验的前提下,服务器承载也不会过高。
如图5所示,本可选示例提供的数据传输方法包括以下步骤:
1、Client(观战客户端,相当于上述客户端)指定比赛场次,发起观战请求(相当于上述第一数据请求);
2、Agent(即观战角色所在的服务器的观战代理,相当于上述第一服务器)查找到比赛关联的Observer(即战斗场景所在的服务器的观察者,相当于上述第二服务器),发送快照请求(相当于上述第二数据请求);
3、Observer生成快照数据(相当于上述第一数据),并返回给Agent;
4、Agent将快照数据转发给Client,此时客户端进入观战模式;
5、比赛过程中,战斗场景上发生各种交互,如技能、移动、对话等同步数据;
6、Observer收到战斗数据(相当于上述第二数据)后,发送给Agent;
7、Agent接收到战斗数据后,转发给Client,此时客户端上就有了角色施放技能或者移动等表现。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例,还提供了一种用于实施上述数据传输方法的数据传输装置,应用于第一服务器,如图6所示,该装置包括:
1)第一接收模块62,用于接收登录到第一服务器的客户端发送的第一数据请求,其中,第一数据请求用于请求在客户端上显示第二服务器上的当前运行场景中的数据;
2)第一发送模块64,用于发送第二数据请求至第二服务器,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
3)第一获取模块66,用于获取第二服务器响应第二数据请求返回的当前运行场景中的数据;
4)第二发送模块68,用于向客户端发送当前运行场景中的数据。
可选地,在本实施例中,上述数据传输装置可以但不限于应用于客户端请求显示服务器上当前运行场景中的数据的场景。其中,上述客户端可以但不限于为各种类型的软件,例如,在线教育软件客户端、视频软件客户端、即时通讯软件客户端、直播软件客户端、游戏软件客户端等。具体的,可以但不限于应用于在上述游戏软件客户端请求观战游戏赛事的场景中,或还可以但不限于应用于在上述视频软件客户端请求收看视频直播的场景中,以减轻了第二服务器的承载压力。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,以客户端请求观看游戏对战为例,第一服务器可以是承载客户端业务的服务器,第二服务器可以是承载游戏对战的服务器。
可选地,在本实施例中,上述第二服务器上当前运行场景可以但不限于包括第二服务器上承载的视频直播、第二服务器上承载的游戏对战、第二服务器上承载的体育赛事直播等等。
可选地,在本实施例中,第二服务器上当前运行场景中的数据可以但不限于包括该场景的第一属性数据、场景中的对象的第二属性数据以及第一属性数据和第二属性数据的变化数据。举个例子来说,以一场游戏赛事为例,当前运行场景中的数据可以包括这场比赛所在的场景中本身的数据(比如本场比赛所用地图数据、地图中建筑、地形、环境等数据等等)、场景中对战双方玩家的数据(玩家的装备、等级、角色信息等等)以及玩家或者场景的变化数据(比如玩家释放技能、走位等数据,场景中建筑或其他事物发生的变化,比如房子的门被撞掉等等)。
可见,通过上述装置,客户端登陆的第一服务器接收到客户端发送的第一数据请求后,向客户端请求显示的场景所在的第二服务器发送第二数据请求以请求获取该场景的数据,该场景为第二服务器上当前运行场景,由第二服务器获取该场景的数据并返回给第一服务器,第一服务器将接收到的数据发送给发起请求的客户端,从而避免了将发起请求的客户端传送至发生请求的场景的第二服务器,而是由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
作为一种可选的方案,第一获取模块用于:获取第二服务器响应第二数据请求返回的当前运行场景中的数据包括的第一数据,其中,第一数据用于指示第二服务器接收到第二数据请求时当前运行场景的状态;获取第二服务器发送的当前运行场景中的数据包括的第二数据,其中,第二数据为第二服务器采集第一数据之后当前运行场景中生成的数据。
可选地,在本实施例中,第一数据用于指示第二服务器接收到第二数据请求时当前运行场景的状态。当前运行场景的状态可以包括该场景当前的属性信息、场景中对象当前的属性信息等等。例如:在客户端请求观战游戏比赛的场景中,第一数据可以是战斗场景的瞬间状态数据,包括了玩家、场景地貌、所处区域等信息。
可选地,在本实施例中,第二数据为第二服务器采集第一数据之后当前运行场景中生成的数据。第一数据之后当前运行场景中生成的数据可以是场景或者场景中的对象新生成的数据。例如:在客户端请求观战游戏比赛的场景中,第二数据可以指的是新发生的事情产生的数据,如角色走了一步、角色施放了一个技能、角色死亡等。
通过上述装置,第一服务器首先从第二服务器获取用于指示该场景当前状态的第一数据,从而获得了该场景的整体情况,再获取场景中新生成的数据,已获取到场景中的变化情况,使得第二服务器不必重复的发送场景的整体状态数据,只需在获取的第一数据的基础上获取场景中的变化数据即可,从而减轻了第二服务器的承载压力。
作为一种可选的方案,第一获取模块用于:获取第二服务器响应第二数据请求返回的当前运行场景中预设区域内的数据,其中,预设区域为客户端指定的区域。
可选地,在本实施例中,第二服务器返回的数据可以是当前运行场景中预设区域内的数据,也就是说,第二服务器不必获取整个场景中的全部数据,只需要获取客户端关心的区域的数据即可。
可选地,在本实施例中,预设区域可以但不限于为客户端指定的区域,客户端指定区域的方式可以是由客户端对显示的区域进行选择,也可以是根据客户端所在的位置进行检测得到的,或者是可以根据客户端的移动对区域进行转换。
例如:该装置还可以包括:第三获取模块,用于在获取第二服务器响应第二数据请求返回的当前运行场景中预设区域内的数据之前,获取客户端指定的预设区域;第一服务器向第二服务器发送用于指示预设区域的信息。
可见,通过上述装置,由客户端指定获取数据的区域,从而避免了对整个场景的数据进行传输,减少了第二服务器的承载压力,也使得场景的显示更加灵活。
作为一种可选的方案,第一接收模块用于:在预设时间内获取多个客户端发送的多个第一数据请求;响应于多个第一数据请求生成一个第二数据请求;发送一个第二数据请求至第二服务器。
可选地,在本实施例中,第一服务器可以在接收第一数据请求和发送第二数据请求之间,执行一个预设时间的延时,从而对于请求显示同一场景的第一数据请求只需向第二服务器发送一个第二数据请求即可,从而减少了数据传输量,也减轻了第二服务器的承载压力。
可选地,在本实施例中,多个第一数据请求可以但不限于是请求显示同一场景数据的请求,或者可以是请求显示同一场景下同一预设区域的数据的请求。可以由第一服务器对客户端发起的请求进行分类。
可见,通过上述装置,第一服务器对于预设时间内接收到的第一数据请求只需向第二服务器发送一个第二数据请求即可,从而降低了数据传输量,也减少了第二服务器的承载压力。
作为一种可选的方案,第一接收模块用于以下之一:
检测当前接收当前运行场景中的数据的数据流量;在数据流量未超过预设数据流量的情况下,接收登录到第一服务器的客户端发送的第一数据请求;
检测当前待发送当前运行场景中的数据的任务数量;在任务数量未超过预设任务数量的情况下,接收登录到第一服务器的客户端发送的第一数据请求。
可选地,在本实施例中,以游戏观战为例,通过在第一服务器上检测同步流量并与阀值作比较,可主动限制甚至减少观战人数,控制观战开销在全局资源中的占比,使得在提高观战人数上限的前提下又不会降低各节点(包括第一服务器、第二服务器、客户端及各传输链路)的稳定性,并且不会影响到非观战玩家的体验。例如在战斗场景的战斗状况比较复杂的情况下,可能会导致同步的流量较大,此时如果发现观战流量超过了系统预设限制的70%,观战系统会主动地禁止新玩家发起观战;若超过了预设的80%,观战系统会主动地将部分观战玩家停止观战,直到流量占比下降到70%以下为止。
根据本发明实施例,还提供了另一种用于实施上述数据传输方法的数据传输装置,应用于第二服务器,如图7所示,该装置包括:
1)第二接收模块72,用于接收第一服务器发送的第二数据请求,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
2)第二获取模块74,用于响应第二数据请求获取当前运行场景中的数据;
3)第三发送模块76,用于将当前运行场景中的数据发送至第一服务器。
可选地,在本实施例中,第二服务器无需针对客户端进行数据的传输,只需响应第一服务器发送的第二数据请求对数据进行获取和传输即可,从而降低了第二服务器的承载压力。
以游戏观战为例,在常规方案中,观战数据是针对每个观战者的客户端单独发送的,这样会给第二服务器到第一服务器的传输链路带来很大的网络流量开销。在本实施例中,可以让同一个第一服务器上的观战者客户端公用一份下行数据,可以让该链路保持稳定而且较低的流量。
可见,通过上述装置,客户端登陆的第一服务器向客户端请求显示的场景所在的第二服务器发送第二数据请求以请求获取该场景的数据,该场景为第二服务器上当前运行场景,由第二服务器获取该场景的数据并返回给第一服务器,从而避免了将发起请求的客户端传送至发生请求的场景的第二服务器,而是由第二服务器将获取到的数据发送给第一服务器,再由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
作为一种可选的方案,第二服务器响应第二数据请求获取当前运行场景中的数据;第二服务器将当前运行场景中的数据发送至第一服务器包括:
第二获取模块,用于响应第二数据请求在当前运行场景中获取第一数据,其中,第一数据用于指示第二服务器接收到第一数据请求时当前运行场景的状态;
第三发送模块,用于向第一服务器发送第一数据;
第二获取模块,还用于在采集第一数据之后,获取当前运行场景中的第二数据,其中,第二数据为第二服务器获取第一数据之后当前运行场景中生成的数据;
第三发送模块,还用于向第一服务器发送第二数据;
其中,当前运行场景中的数据包括第一数据和第二数据。
可选地,在本实施例中,第二服务器获取第一数据并实时将获取到的第一数据发送给第一服务器,在第二服务器获取到第二数据时,再将第二数据实时传输给第一服务器,从而实现了数据的同步传输。
作为一种可选的方案,第二获取模块用于:获取第一服务器发送的用于指示预设区域的信息,其中,预设区域为向第一服务器请求显示当前运行场景中的数据的客户端指定的当前运行场景中的区域;获取当前运行场景中预设区域内的数据。
可选地,在本实施例中,第二服务器可以根据客户端需要显示的区域获取场景中的数据。从而减少了数据的传输量。
根据本发明实施例,还提供了另一种用于实施上述数据传输方法的数据传输装置,应用于客户端,如图8所示,该装置包括:
1)第四发送模块82,用于发送第一数据请求至第一服务器,其中,第一数据请求用于请求在客户端上显示当前运行场景中的数据,客户端在第一服务器上登录,当前运行场景为在第二服务器中当前运行的场景;
2)第三接收模块84,用于接收第一服务器响应第一数据请求发送的当前运行场景中的数据,其中,当前运行场景中的数据为第二服务器响应第一服务器发送的第二数据请求向第一服务器发送的数据,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
3)显示模块86,用于根据接收到的当前运行场景中的数据显示当前运行场景。
可见,通过上述装置,客户端登陆的第一服务器接收到客户端发送的第一数据请求后,向客户端请求显示的场景所在的第二服务器发送第二数据请求以请求获取该场景的数据,该场景为第二服务器上当前运行场景,由第二服务器获取该场景的数据并返回给第一服务器,第一服务器将接收到的数据发送给发起请求的客户端,从而避免了将发起请求的客户端传送至运行请求的场景的第二服务器,而是由第一服务器将从第二服务器获取到的请求的场景的数据发送给客户端进行显示,从而减轻了第二服务器的承载压力,进而克服现有技术中数据传输过程中服务器承载较高的问题。
作为一种可选的方案,第三接收模块,用于接收第一服务器发送的当前运行场景中的数据包括的第一数据,其中,第一数据用于指示第二服务器接收到第一数据请求时当前运行场景的状态;
显示模块,用于加载第一数据,得到第一数据指示的当前运行场景的状态;
第三接收模块,还用于接收第一服务器发送的当前运行场景中的数据包括的第二数据,其中,第二数据为第二服务器获取第一数据之后当前运行场景中生成的数据;
显示模块,还用于在第一数据指示的当前运行场景的状态中加载第二数据,得到当前运行场景。
可选地,在本实施例中,客户端接收到第一数据后将第一数据进行显示,当接收到第二数据时,再在第一数据的基础上显示第二数据,从而实现场景的同步显示。
作为一种可选的方案,第三接收模块用于:向第一服务器指定预设区域;接收第一服务器发送的当前运行场景中预设区域内的数据。
可选地,在本实施例中,客户端向第一服务器指定预设区域的方式可以为客户端向第一服务器发送预设区域的指示信息,还可以是客户端将当前请求显示的区域在场景中的位置发送给第一服务器。
本发明实施例的应用环境可以但不限于参照实施例1中的应用环境,本实施例中对此不再赘述。本发明实施例提供了用于实施上述数据传输方法的一种可选的具体应用示例。
作为一种可选的实施例,上述配置对象的更新方法可以但不限于应用于如图9所示的数据传输的场景中。以游戏观战为例,Battle Server战斗服务器(相当于上述第二服务器),即对抗实际进行的服务器,战斗场景及对抗双方都是存在于其上的实例;Observer观察者,关联于对战场景的数据收集器,作用是收集战斗场景相关的数据,接受来自战斗场景的数据同步,也负责从战斗场景中生成快照。
Spectate Sever观战服务器(相当于上述第一服务器),即观战角色当前所登录的服务器,同一场比赛会有来自多个服务器的玩家观看;Observer Agent观察者代理,简称为Agent,负责转发来自观战角色的请求以及来自Observer的同步数据,是观战服务器上的数据实例。
Client客户端(相当于上述客户端),即玩家所真正面对的操作界面,接收到观战数据后会进行战斗情景的重现。
在本场景中,观战角色并不进入实际战斗场景,通过快照+增量的同步方案达到与在实际场景中观战同样的效果,且不会对战斗场景造成额外影响,同时可以在客户端进行更好的演示效果。
其次,本场景缩减了观战的范围,很多游戏是将观战场景的所有同步数据都转发给观战者,实际上观战者只关心屏幕范围(即视野范围)运行的事情,其他数据实际上不需要。所以在本实施例中,观察者只收集观战者指示的战斗场景范围的数据。
在常规方案中,观战数据是针对每个观战者单独发送的,这样会给Observer到Agent的传输链路带来很大的网络流量开销。在本场景中,可以让同一个观战服务器上的观战者公用一份下行数据,可以让该链路保持稳定而且较低的流量。
此外,在常规方案中,每个观战者加入时,都会向Observer请求快照数据(相当于上述第一数据),这对Observer所在的服务器计算量以及Observer到Agent的传输链路都会带来压力。本场景中,通过短延迟的合并快照请求(相当于上述第二数据请求),使在很短时间内(如0.5秒)到来的新观战者的快照请求合并成1次进行处理,这样对于这段时间内,Observer只需要生成一份快照,并且对一个Agent只需要一次快照同步即可。避免了在比赛开始时,大批玩家开始观战,导致系统压力随着观战人数上升而上升,进而影响系统稳定的问题。
在本场景中,通过在Agent上检测同步流量并与阀值作比较,可主动限制甚至减少观战人数,控制观战开销在全局资源中的占比,使得在提高观战人数上限的前提下又不会降低各节点(包括Observer、Agent、Client及各传输链路)的稳定性,并且不会影响到非观战玩家的体验。例如在战斗场景的战斗状况比较复杂的情况下,可能会导致同步的流量较大,此时如果发现观战流量超过了系统预设限制的70%,观战系统会主动地禁止新玩家发起观战;若超过了预设的80%,观战系统会主动地将部分观战玩家停止观战,直到流量占比下降到70%以下为止。
在本场景中,观战数据转发时可以当成纯粹的二进制流处理,各转发节点不需要针对协议内容做额外处理,同时也使得本模块可直接适用在其他项目或其他功能上。
可见,通过Observer+Agent的转发方式,并且同个Agent上的观战者共享一份同步数据,极大地缩减了同步数据量,使战斗服务器到观战服务器之间的转发数据量不会随着观战人数上升而线性增长,而是稳定在可控的范围内。
其次,观战请求短延迟处理稳定了观战点的性能开销以及转发的同步链路流量压力,不会随着单位时间内新加入的玩家数量增长而增长。
此外,系统可控制观战开销在全局资源中的占比,主动限制/减少观战人数,使得在提高观战人数上限的前提下又不会降低各节点的稳定性,且不影响观战外其他系统的稳定性。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以位于网络中的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,第一服务器接收登录到第一服务器的客户端发送的第一数据请求,其中,第一数据请求用于请求在客户端上显示第二服务器上的当前运行场景;
S2,第一服务器发送第二数据请求至第二服务器,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
S3,第一服务器获取第二服务器响应第二数据请求返回的当前运行场景中的数据;
S4,第一服务器向客户端发送当前运行场景中的数据。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
S1,第二服务器接收第一服务器发送的第二数据请求,其中,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
S2,第二服务器响应第二数据请求获取当前运行场景中的数据;
S3,第二服务器将当前运行场景中的数据发送至第一服务器。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:
S1,客户端发送第一数据请求至第一服务器,其中,第一数据请求用于请求在客户端上显示当前运行场景中的数据,客户端在第一服务器上登录,当前运行场景为在第二服务器中当前运行的场景;
S2,客户端接收第一服务器响应第一数据请求发送的当前运行场景中的数据,其中,当前运行场景中的数据为第二服务器响应第一服务器发送的第二数据请求向第一服务器发送的数据,第二数据请求用于请求获取第二服务器上的当前运行场景中的数据;
S3,客户端根据接收到的当前运行场景中的数据显示当前运行场景中的数据。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (13)
1.一种数据传输方法,其特征在于,包括:
第一服务器接收登录到所述第一服务器的客户端发送的第一数据请求,其中,所述第一数据请求用于请求在所述客户端上显示第二服务器上的当前运行场景;
所述第一服务器发送第二数据请求至所述第二服务器,其中,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;
所述第一服务器获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中的数据;
所述第一服务器向所述客户端发送所述当前运行场景中的数据。
2.根据权利要求1所述的方法,其特征在于,所述第一服务器获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中的数据包括:
所述第一服务器获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中的数据包括的第一数据,其中,所述第一数据用于指示所述第二服务器接收到所述第二数据请求时所述当前运行场景的状态;
所述第一服务器获取所述第二服务器发送的所述当前运行场景中的数据包括的第二数据,其中,所述第二数据为所述第二服务器采集所述第一数据之后所述当前运行场景中生成的数据。
3.根据权利要求1所述的方法,其特征在于,所述第一服务器获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中的数据包括:
所述第一服务器获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中预设区域内的数据,其中,所述预设区域为所述客户端指定的区域。
4.根据权利要求3所述的方法,其特征在于,在所述第一服务器获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中预设区域内的数据之前,所述方法还包括:
所述第一服务器获取所述客户端指定的所述预设区域;
所述第一服务器向所述第二服务器发送用于指示所述预设区域的信息。
5.根据权利要求1所述的方法,其特征在于,所述第一服务器接收所述客户端发送的所述第一数据请求包括:
所述第一服务器在预设时间内获取多个客户端发送的多个所述第一数据请求;
所述第一服务器响应于多个所述第一数据请求生成一个所述第二数据请求;
所述第一服务器发送所述一个所述第二数据请求至所述第二服务器。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述第一服务器接收登录到所述第一服务器的所述客户端发送的所述第一数据请求包括以下之一:
所述第一服务器检测当前接收所述当前运行场景中的数据的数据流量;在所述数据流量未超过预设数据流量的情况下,所述第一服务器接收登录到所述第一服务器的所述客户端发送的所述第一数据请求;
所述第一服务器检测当前待发送所述当前运行场景中的数据的任务数量;在所述任务数量未超过预设任务数量的情况下,所述第一服务器接收登录到所述第一服务器的所述客户端发送的所述第一数据请求。
7.一种数据传输方法,其特征在于,包括:
客户端发送第一数据请求至第一服务器,其中,所述第一数据请求用于请求在所述客户端上显示当前运行场景,所述客户端在所述第一服务器上登录,所述当前运行场景为在第二服务器中当前运行的场景;
所述客户端接收所述第一服务器响应所述第一数据请求发送的所述当前运行场景中的数据,其中,所述当前运行场景中的数据为所述第二服务器响应所述第一服务器发送的第二数据请求向所述第一服务器发送的数据,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;
所述客户端根据接收到的所述当前运行场景中的数据显示所述当前运行场景。
8.根据权利要求7所述的方法,其特征在于,所述客户端接收所述第一服务器响应所述第一数据请求发送的所述当前运行场景中的数据;所述客户端根据接收到的所述当前运行场景中的数据显示所述当前运行场景包括:
所述客户端接收所述第一服务器发送的所述当前运行场景中的数据包括的第一数据,其中,所述第一数据用于指示所述第二服务器接收到所述第一数据请求时所述当前运行场景的状态;
所述客户端加载所述第一数据,得到所述第一数据指示的所述当前运行场景的状态;
所述客户端接收所述第一服务器发送的所述当前运行场景中的数据包括的第二数据,其中,所述第二数据为所述第二服务器获取所述第一数据之后所述当前运行场景中生成的数据;
所述客户端在所述第一数据指示的所述当前运行场景的状态中加载所述第二数据,得到所述当前运行场景。
9.根据权利要求7或8所述的方法,其特征在于,所述客户端接收所述第一服务器响应所述第二数据请求发送的所述当前运行场景中的数据包括:
所述客户端向所述第一服务器指定预设区域;
所述客户端接收所述第一服务器发送的所述当前运行场景中所述预设区域内的数据。
10.一种数据传输装置,应用于第一服务器,其特征在于,包括:
第一接收模块,用于接收登录到所述第一服务器的客户端发送的第一数据请求,其中,所述第一数据请求用于请求在所述客户端上显示第二服务器上的当前运行场景;
第一发送模块,用于发送第二数据请求至所述第二服务器,其中,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;
第一获取模块,用于获取所述第二服务器响应所述第二数据请求返回的所述当前运行场景中的数据;
第二发送模块,用于向所述客户端发送所述当前运行场景中的数据。
11.一种数据传输装置,应用于客户端,其特征在于,包括:
第四发送模块,用于发送第一数据请求至第一服务器,其中,所述第一数据请求用于请求在所述客户端上显示当前运行场景,所述客户端在所述第一服务器上登录,所述当前运行场景为在第二服务器中当前运行的场景;
第三接收模块,用于接收所述第一服务器响应所述第一数据请求发送的所述当前运行场景中的数据,其中,所述当前运行场景中的数据为所述第二服务器响应所述第一服务器发送的第二数据请求向所述第一服务器发送的数据,所述第二数据请求用于请求获取所述第二服务器上的当前运行场景中的数据;
显示模块,用于根据接收到的所述当前运行场景中的数据显示所述当前运行场景。
12.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至9任一项中所述的方法。
13.一种电子装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器通过所述计算机程序执行上述权利要求1至9任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710856262.1A CN109525627B (zh) | 2017-09-20 | 2017-09-20 | 数据传输方法、装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710856262.1A CN109525627B (zh) | 2017-09-20 | 2017-09-20 | 数据传输方法、装置、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109525627A true CN109525627A (zh) | 2019-03-26 |
CN109525627B CN109525627B (zh) | 2022-02-25 |
Family
ID=65769640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710856262.1A Active CN109525627B (zh) | 2017-09-20 | 2017-09-20 | 数据传输方法、装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109525627B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110090449A (zh) * | 2019-04-26 | 2019-08-06 | 网易(杭州)网络有限公司 | 一种游戏观战方法及游戏观战系统 |
CN111182321A (zh) * | 2019-12-31 | 2020-05-19 | 广州博冠信息科技有限公司 | 处理信息的方法、装置和系统 |
CN111228824A (zh) * | 2020-01-10 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 游戏观战方法、装置、计算机可读介质及电子设备 |
CN111773738A (zh) * | 2020-08-13 | 2020-10-16 | 网易(杭州)网络有限公司 | 一种游戏观战方法和装置 |
CN111973983A (zh) * | 2020-08-27 | 2020-11-24 | 网易(杭州)网络有限公司 | 游戏数据传输方法、装置、电子设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5459517A (en) * | 1992-12-15 | 1995-10-17 | Fuji Xerox Co., Ltd. | Moving picture scene detection system |
US20030093810A1 (en) * | 2001-10-30 | 2003-05-15 | Koji Taniguchi | Video data transmitting/receiving method and video monitor system |
CN101616007A (zh) * | 2008-06-24 | 2009-12-30 | 华为技术有限公司 | 一种map服务器的实现方法、系统和设备 |
CN102439946A (zh) * | 2011-06-23 | 2012-05-02 | 华为技术有限公司 | 数据传输方法和设备 |
US20140297012A1 (en) * | 2008-12-05 | 2014-10-02 | Sony Corporation | Information processing apparatus, information processing method, and program |
CN106210797A (zh) * | 2016-07-29 | 2016-12-07 | 北京小米移动软件有限公司 | 网络直播方法及装置 |
CN106339613A (zh) * | 2016-08-15 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 一种应用数据的处理方法、终端及服务器 |
-
2017
- 2017-09-20 CN CN201710856262.1A patent/CN109525627B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5459517A (en) * | 1992-12-15 | 1995-10-17 | Fuji Xerox Co., Ltd. | Moving picture scene detection system |
US20030093810A1 (en) * | 2001-10-30 | 2003-05-15 | Koji Taniguchi | Video data transmitting/receiving method and video monitor system |
CN101616007A (zh) * | 2008-06-24 | 2009-12-30 | 华为技术有限公司 | 一种map服务器的实现方法、系统和设备 |
US20140297012A1 (en) * | 2008-12-05 | 2014-10-02 | Sony Corporation | Information processing apparatus, information processing method, and program |
CN102439946A (zh) * | 2011-06-23 | 2012-05-02 | 华为技术有限公司 | 数据传输方法和设备 |
CN106210797A (zh) * | 2016-07-29 | 2016-12-07 | 北京小米移动软件有限公司 | 网络直播方法及装置 |
CN106339613A (zh) * | 2016-08-15 | 2017-01-18 | 腾讯科技(深圳)有限公司 | 一种应用数据的处理方法、终端及服务器 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110090449A (zh) * | 2019-04-26 | 2019-08-06 | 网易(杭州)网络有限公司 | 一种游戏观战方法及游戏观战系统 |
CN111182321A (zh) * | 2019-12-31 | 2020-05-19 | 广州博冠信息科技有限公司 | 处理信息的方法、装置和系统 |
CN111228824A (zh) * | 2020-01-10 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 游戏观战方法、装置、计算机可读介质及电子设备 |
CN111773738A (zh) * | 2020-08-13 | 2020-10-16 | 网易(杭州)网络有限公司 | 一种游戏观战方法和装置 |
CN111773738B (zh) * | 2020-08-13 | 2024-04-26 | 网易(杭州)网络有限公司 | 一种游戏观战方法和装置 |
CN111973983A (zh) * | 2020-08-27 | 2020-11-24 | 网易(杭州)网络有限公司 | 游戏数据传输方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109525627B (zh) | 2022-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109525627A (zh) | 数据传输方法、装置、存储介质及电子装置 | |
TWI722461B (zh) | 低延遲資料包回應電腦網路協定 | |
US8214433B2 (en) | System and method to provide context for an automated agent to service multiple avatars within a virtual universe | |
CN110090449A (zh) | 一种游戏观战方法及游戏观战系统 | |
JP2020528314A (ja) | ゲームコンテンツの同期表示に関する方法、装置および記憶媒体 | |
CN105553993B (zh) | 一种远程服务调用方法、装置及服务器 | |
CN107404514A (zh) | 数据处理方法和装置 | |
CN109692480B (zh) | 一种网络游戏内观战方法和装置 | |
CN114344892B (zh) | 一种数据处理方法和相关装置 | |
CN111818349A (zh) | 一种页面展示方法、装置、电子设备及存储介质 | |
EP3241162A1 (en) | Method and system of on-line real-time shadowing for context aware user relationship management | |
CN109847340A (zh) | 一种信息处理方法、装置、设备及介质 | |
Suznjevic et al. | Analyzing the effect of TCP and server population on massively multiplayer games | |
US20230353653A1 (en) | System, method and computer-readable medium for notification | |
CN111841019A (zh) | 游戏应用安全验证方法、装置、设备及存储介质 | |
US10722798B1 (en) | Task-based content management | |
CN116764235A (zh) | 数据处理方法及相关装置 | |
CN113244620A (zh) | 角色扮演游戏实现方法及电子设备 | |
US20220027116A1 (en) | Virtual world construction system and method | |
US10398971B2 (en) | Video game program and system | |
US9731192B1 (en) | Task-based content management | |
CN113368493B (zh) | 虚拟场景的流量处理方法、装置、电子设备及存储介质 | |
Ravindran et al. | Managing shared contexts in distributed multi-player game systems | |
KR20030064732A (ko) | 네트워크 가상 환경에서 가변적 네트워크 상태를 고려한동기화 방법 | |
CN118286693A (zh) | 虚拟对局的处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |