CN111752655B - 数据处理系统及方法 - Google Patents
数据处理系统及方法 Download PDFInfo
- Publication number
- CN111752655B CN111752655B CN202010403472.7A CN202010403472A CN111752655B CN 111752655 B CN111752655 B CN 111752655B CN 202010403472 A CN202010403472 A CN 202010403472A CN 111752655 B CN111752655 B CN 111752655B
- Authority
- CN
- China
- Prior art keywords
- server
- window picture
- rendering instruction
- storage position
- display module
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000009877 rendering Methods 0.000 claims abstract description 136
- 238000003672 processing method Methods 0.000 claims description 15
- 238000012544 monitoring process Methods 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开提供一种数据处理系统及方法,涉及数据处理领域,该系统包括第一服务器、第二服务器和终端设备,终端设备,用于向第一服务器发送第一操作消息;第一服务器,用于控制第二服务器根据显示信息建立与设备标识对应的显示模块,并生成第一渲染指令,并将第一渲染指令发送给第二服务器;第二服务器,用于根据第一渲染指令进行渲染,生成第一原始窗口画面,并将第一原始窗口画面发送给对应的显示模块;显示模块第一原始窗口画面进行调整,生成第一调整窗口画面,并将第一调整窗口画面进行编码得到第一编码数据,并获取第一编码数据的第一保存位置;终端设备根据第一保存位置从第二服务器中获取第一编码数据,并在解码后显示第一调整窗口画面。
Description
技术领域
本公开涉及数据处理领域,尤其涉及数据处理系统及方法。
背景技术
云端虚拟化技术当前发展以及非常迅速。随着各个公有云平台的进一步发展,对于虚拟桌面云平台的需求进一步加大。同时,由于用户对云端渲染图像的能力要求也越来越高,为了满足用户对图像的高需求,提出了图形处理器池(Graphics Processing Unit,GPU POOL)。GPU POOL能够对来自虚拟机(Virtual Machine,VM)的第一渲染指令进行渲染,并将渲染生成的图像发送给接收(Receiver,R)端,R端可以是硬R或者软R,软R运行在第一终端设备上,硬R为独立设备,R仅具有解码和显示功能,用户针对系统的所有操作都由VM完成。第一终端设备可以仅包括GPU、简单CPU和显示屏。
在一个用户同时使用多个终端设备,也即一个用户账号同时登录三个R的场景下,比如用户使用一个用户账号同时使用多个终端设备,在基于GPU POOL的云终端系统中,如何实现同一用户账号同时使用多个终端设备是尚待解决的问题。
发明内容
本公开实施例提供一种数据处理方法及系统,本公开能够可以根据终端设备的显示信息对显示画面进行调整,生成与终端设备对应的调整窗口画面。。所述技术方案如下:
根据本公开实施例的第一方面,提供一种数据处理系统,该系统包括第一服务器、第二服务器和终端设备,
终端设备,用于向第一服务器发送第一操作消息;所述第一操作消息中包括终端设备的设备标识、账号信息、基于所述账号信息的第一操作动作和终端设备的显示信息;
第一服务器,用于根据所述设备标识,控制第二服务器根据所述显示信息建立与所述设备标识对应的显示模块,并根据所述第一操作消息生成第一渲染指令,并将所述第一渲染指令发送给第二服务器,其中,所述第一渲染指令中携带设备标识;
第二服务器,用于根据所述第一渲染指令进行渲染,生成第一原始窗口画面,并根据所述设备标识将所述第一原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第一原始窗口画面进行调整,生成第一调整窗口画面,并将所述第一调整窗口画面进行编码得到第一编码数据,并获取所述第一编码数据的第一保存位置;
终端设备获取所述第一保存位置,并根据所述第一保存位置从第二服务器中获取所述第一编码数据,并在解码后显示所述第一调整窗口画面。
在一个实施例中,终端设备向第一服务器发送基于预设应用的第二操作消息;所述第二操作消息携带有第二操作动作;
第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器;
第二服务器,用于根据所述第二渲染指令进行渲染,生成第二原始窗口画面,并根据所述设备标识将所述第二原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第二原始窗口画面进行调整,生成第二调整窗口画面,并将所述第二调整窗口画面进行编码得到第二编码数据,并获取所述第二编码数据的第二保存位置;
终端设备,用于获取所述第二保存位置,并根据所述第二保存位置从第二服务器中获取所述第二编码数据,并在解码后显示所述第二调整窗口画面。
在一个实施例中,第一服务器在根据所述第二操作消息,生成第二渲染指令之前,
第一服务器,还用于基于所述账号信息运行所述预设应用,查询本地是否存储存在与所述第二操作消息对应的业务模块;
若不存在,则根据所述第二操作消息创建对应的业务模块;
所述第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器包括:
所述业务模块根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器。
在一个实施例中,终端设备至少包括第一终端设备和第二终端设备,第一终端设备对应第一设备标识和第一显示信息,第一设备标识对应第一显示模块和第二显示信息,第二终端设备对应第二设备标识,第二设备标识对应第二显示模块。
在一个实施例中,第一服务器,还用于监测消息事件;
当第一服务器监测到与所述预设应用对应的消息事件时,基于消息事件生成第三渲染指令,将所述第三渲染指令发送给第二服务器;
第二服务器基于所述第三渲染指令进行渲染,得到第三原始窗口画面,并根据第一设备标识和第二设备标识将所述第三原始窗口画面分别发送给第一显示模块和第二显示模块;第一显示模块和第二显示模块分别根据所述第一显示信息和第二显示信息对所述第三原始窗口画面进行调整,生成第三调整窗口画面和第四调整窗口画面;将所述第三调整窗口画面和所述第四调整窗口画面进行编码得到第三编码数据和第四编码数据,并获取所述第三编码数据的第三保存位置和所述第四编码数据的第四保存位置;
所述第一终端设备获取所述第三保存位置,并根据所述第三保存位置从第二服务器中获取所述第三编码数据,并在解码后显示所述第三调整窗口画面,并且,
所述第二终端设备获取所述第四保存位置,并根据所述第四保存位置从第二服务器中获取所述第四编码数据,并在解码后显示所述第四调整窗口画面。
根据本公开实施例的第二方面,提供一种数据处理方法,应用于数据处理系统,该系统包括第一服务器、第二服务器和终端设备,该方法包括:
终端设备向第一服务器发送第一操作消息;所述第一操作消息中包括终端设备的设备标识、账号信息、基于所述账号信息的第一操作动作和终端设备的显示信息;
第一服务器根据所述设备标识,控制第二服务器根据所述显示信息建立与所述设备标识对应的显示模块,并根据所述第一操作消息生成第一渲染指令,并将所述第一渲染指令发送给第二服务器,其中,所述第一渲染指令中携带设备标识;
第二服务器根据所述第一渲染指令进行渲染,生成第一原始窗口画面,并根据所述设备标识将所述第一原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第一原始窗口画面进行调整,生成第一调整窗口画面,并将所述第一调整窗口画面进行编码得到第一编码数据,并获取所述第一编码数据的第一保存位置;
终端设备获取所述第一保存位置,并根据所述第一保存位置从第二服务器中获取所述第一编码数据,并在解码后显示所述第一调整窗口画面。
在一个实施例中,该方法还包括:
终端设备向第一服务器发送基于预设应用的第二操作消息;所述第二操作消息携带有第二操作动作;
第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器;
第二服务器根据所述第二渲染指令进行渲染,生成第二原始窗口画面,并根据所述设备标识将所述第二原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第二原始窗口画面进行调整,生成第二调整窗口画面,并将所述第二调整窗口画面进行编码得到第二编码数据,并获取所述第二编码数据的第二保存位置;
终端设备获取所述第二保存位置,并根据所述第二保存位置从第二服务器中获取所述第二编码数据,并在解码后显示所述第二调整窗口画面。
在一个实施例中,第一服务器在根据所述第二操作消息,生成第二渲染指令之前,该方法还包括:
第一服务器基于所述账号信息运行所述预设应用,查询本地是否存储存在与所述第二操作消息对应的业务模块;
若不存在,则根据所述第二操作消息创建对应的业务模块;
所述第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器包括:
所述业务模块根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器。
在一个实施例中,终端设备至少包括第一终端设备和第二终端设备,第一终端设备对应第一设备标识和第一显示信息,第一设备标识对应第一显示模块和第二显示信息,第二终端设备对应第二设备标识,第二设备标识对应第二显示模块。
在一个实施例中,该方法还包括:
第一服务器监测消息事件;
当第一服务器监测到与所述预设应用对应的消息事件时,基于消息事件生成第三渲染指令,将所述第三渲染指令发送给第二服务器;
第二服务器基于所述第三渲染指令进行渲染,得到第三原始窗口画面,并根据第一设备标识和第二设备标识将所述第三原始窗口画面分别发送给第一显示模块和第二显示模块;第一显示模块和第二显示模块分别根据所述第一显示信息和第二显示信息对所述第三原始窗口画面进行调整,生成第三调整窗口画面和第四调整窗口画面;将所述第三调整窗口画面和所述第四调整窗口画面进行编码得到第三编码数据和第四编码数据,并获取所述第三编码数据的第三保存位置和所述第四编码数据的第四保存位置;
所述第一终端设备获取所述第三保存位置,并根据所述第三保存位置从第二服务器中获取所述第三编码数据,并在解码后显示所述第三调整窗口画面,并且,
所述第二终端设备获取所述第四保存位置,并根据所述第四保存位置从第二服务器中获取所述第四编码数据,并在解码后显示所述第四调整窗口画面。
本公开提供的数据处理系统及方法,可以根据终端设备的显示信息对显示画面进行调整,生成与终端设备对应的调整窗口画面。比如第一终端设备为PC机,因此调整窗口画面的尺寸较大,若终端设备为手机,因此,调整窗口画面较小,R2窗口画面需要对原始的窗口画面进行画面缩放等调整后得到。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种数据处理系统结构图;
图2是本公开实施例提供的一种数据处理方法流程图;
图3是本公开实施例提供的一种数据处理方法流程图;
图4是本公开实施例提供的一种数据处理方法流程图;
图5为本公开实施例提供的一种数据处理系统结构图;
图6是本公开实施例提供的一种数据处理方法流程图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
以下描述的一部分明确地或者暗含地涉及算法和对计算机存储器内数据的操作的功能或者符号表示。这些算法的描述和功能或者符号表示是数据处理领域内技术人员用于更有效地向本领域内其它技术人员表达他们工作实质的方法。此处通常将算法设想为生成期望结果的一系列有条理的步骤。这些步骤是需要对诸如能够存储、传送、组合、对比以及通过其它方式操控的电、磁或者光信号的物理量进行物理操控的步骤。
说明书还公开了用于执行方法操作的设备。这种设备为所需的目的而特别构成,或者可以包括通用计算机或者其它存储在计算机中的计算机程序选择性启动或者重新配置的其它设备。本文介绍的算法和显示不是固有地与任何具体计算机或者其它设备相关。各种通用机器可以根据本文教导的程序一起使用。可替换地,用于执行所要求的方法步骤的更特殊的设备构造是可以适用的。常规的通用计算机的结构将在以下描述中介绍。
此外,由于可以由计算机代码实施本文描述方法的各步骤对本领域技术人员是显而易见的,因此本说明书还暗含地公开计算机程序。该计算机程序不试图限制于任何具体的编程语言及其执行。应该理解,可以使用多种编程语言及其代码以执行本文包含的公开的教导。此外,该计算机程序不试图限制于任何具体的控制流。在不脱离本发明精神或者范围的情况下,存在许多其它种类的、可以使用不同控制流的计算机程序。
而且,可以并行地而不是顺序地执行计算机程序的一个或者多个步骤。这种计算机程序可以存储在任何计算机可读介质上。计算机可读介质可以包括的存储设备诸如为磁盘或者光盘、存储器芯片或者适于与通用计算机接口的其它存储设备等。计算机可读介质还可以包括诸如在因特网系统中的硬接线介质,或者无线介质。当在这种通用计算机上加载和执行计算机程序时,计算机程序有效地产生实施优选方法的步骤的设备。
本发明还可被实施为硬件模块。更具体地,在硬件意义下,模块是被设计为与其它部件或模块一起使用的功能性硬件单元。例如,模块可使用分立电子部件实施,或者其可以形成整个电子电路诸如特定用途集成电路(ASIC)的一部分。还存在许多其它可能。本领域技术人员应理解,该系统还可被实施为硬件和软件模块的组合。
图1是本公开实施例提供的一种数据处理系统结构图,如图1所示的数据处理系统为云端虚拟化系统,该系统包括GPU POOL服务器(图中的GPU POOL系统)和云服务器(图中的云端虚拟化系统)。如图1所示,云端虚拟化系统包括多个VM,一个VM包括显示管理器模块、至少一个业务模块,一个业务模块对应一个用户的业务场景软件实现;当用户进行操作动作时,业务模块会对操作动作做出响应,当没有进行任何操作动作时,业务模块没有任何响应。GPU POOL系统包括GPU POOL模块、S2模块和至少一个显示模块,其中,一个显示模块对应一个R端,当然,S2模块可以集成在GPU POOL模块中。VM,用于接收用户使用同一用户账号在R端的操作信息,执行操作信息,并生成操作信息对应的窗口画面的渲染指令,将窗口画面的渲染指令发送给GPU POOL系统进行渲染。
显示管理器模块,用于对VM账号的管理;
具体包括:
1、保存各R端的显示信息,具体可以为R端的识别码和显示信息的对应关系,显示信息包括显示分辨率和显示形式,显示形式包括详细版和简约版。
2、建立与用户业务场景相关的业务模块,并响应用户的操作动作;
3、控制GPU POOL系统建立与R端对应的显示模块;
4、保存各R的编码数据在GPU POOL中的保存位置,具体可以为保存位置与各R的标识符之间的对应关系。
业务模块,用于响应用户在R上,有关第三方软件的操作动作,比如观看视频A,浏览购物网站B等,并根据操作动作生成窗口画面的渲染指令,并将窗口画面的渲染指令发送给窗口管理器;由窗口管理器根据窗口画面的渲染指令生成桌面的渲染指令,并将桌面的渲染指令发送给GPU POOL系统进行处理。
需要说明的是,业务模块之间通过不同的业务类型来区分。
转发模块,用于将来自R端的消息转发至云端虚拟化系统。
在具体应用中,R端发给VM的消息,均需要经GPU POOL系统中的转发模块进行透传。
GPU POOL模块,用于接收并执行业务模块发送的渲染指令B,生成渲染画面,将渲染画面发送到S2模块。
S2模块,用于对渲染后的画面进行编码和保存,编码数据的保存位置由IP地址+端口号组成。
上述的GPU POOL系统包括GPU POOL、显示模块和S2模块。云虚拟化系统与GPUPOOL系统连接。一个用户账号对应一个VM,VM上运行至少一个业务模块。VM中的业务模块用于根据R发送的用户操作信息执行用户的各种操作动作,并生成窗口画面的渲染指令,进而由窗口管理器根据窗口画面的渲染指令,生成桌面的渲染指令,窗口管理器将桌面的渲染指令发给GPU POOL系统中GPU POOL模块进行渲染,生成原始的窗口画面;GPU POOL模块将原始的窗口画面发给显示模块;一个显示模块对应一个上述用户账号登录的R,每个显示模块上存储所对应的R的显示信息;显示模块根据所对应的R的显示信息,对原始的窗口画面进行画面缩放等调整,生成与R端的显示信息相匹配的R端窗口画面。
其中,显示信息包括显示分辨率和色彩信息等。比如,用户在R1上操作打开聊天应用,由VM上的聊天应用对应的业务模块执行用户的“打开”操作,先由GPU POOL模块生成原始的窗口画面,原始的窗口画面可以为完整的聊天窗口画面,进而由R1对应的显示模块1对原始的窗口画面进行画面缩放等调整,生成与R1窗口画面。由于R1为PC机,因此R1窗口画面的尺寸较大,R1窗口画面与原始的窗口画面较为接近。若用户在R2上打开聊天应用,由于R2为手机,因此,R2窗口画面较小,R2窗口画面需要对原始的窗口画面进行画面缩放等调整后得到。
这样,不仅方便一个账号对应的各R间的信息共享和同步,而且实现方式较为简洁高效。
下面通过几个应用场景实施例,说基于GPU POOL的云端虚拟化系统对于同一用户账户登录多个R的处理流程。
实施例一
图2是本公开实施例提供的一种数据处理方法流程图,该实施例的场景针对的是,用户使用用户账号A,分别登录R1、R2和R3。具体以用户登录R1为例进行说明,如图2所示的数据处理方法具体包括以下步骤:
步骤201、用户通过R1端,输入用户名和密码,R1向云端虚拟化系统中的S1模块发送用户操作信息。
在本步骤中,用户开机后,VM1中的登录和会话管理器向GPU POOL系统发送绘制登录界面的渲染指令,这样,开机后的画面为登录界面。用户在R1的登录界面中输入用户操作信息(登录账号),其中,用户操作信息(登录账号)中携带R1端的标识码、用户账号A、操作动作(登陆)和R1的显示信息。
其中,R端的标识码可以为硬件标识码,以便云端虚拟化系统能够区分不同的R。
步骤202、S1模块获取用户操作信息(登录账号),确定该用户账号对应的VM1,并将用户操作信息(登录账号)转发给VM1。
步骤203、VM1中的显示管理器控制GPU POOL系统,根据R1的显示信息建立R1的显示模块1。
需要说明的是,显示管理器中保存用户账号与已登录的R端(已建立显示模块)的对应关系。
在具体实施中,可以在显示管理器上事先保存R端的类型与显示模块的模板的对应关系,R端的类型包括手机、PC端、手表等。这样,用户操作信息(登录账号)就可以不携带R端的显示信息,只需要携带R端的类型的标识就可以了,显示管理器根据R端的类型的标识,找到对应的显示模块的模板,根据该显示模块的模板生成R端对应的显示模块。
步骤204、VM1中的登录和会话管理器生成用于绘制登录成功界面的渲染指令1B,并将渲染指令1B发送给GPU POOL模块;
其中,渲染指令1B中携带R1端的标识符。
步骤205、GPU POOL模块根据渲染指令1B进行渲染,生成原始的窗口画面3B;以及根据R1的标识符,则GPU POOL模块将原始的窗口画面3B发送给显示模块1。
步骤206、显示模块1根据R1的显示信息,对原始的窗口画面3B进行画面缩放等调整,生成R1窗口画面3B1;将R1窗口画面3B1发送给S2模块进行编码并保存编码数据3B;
编码数据3B在GPU POOL系统中的保存位置为IP地址+端口。
其中,R1窗口画面3B是与R1的显示信息相匹配的登录成功的画面。
步骤207、R1向显示管理器模块发送获取编码数据的请求,显示管理器模块向R1返回编码数据3B的保存位置。
由于显示管理器模块中事先保存了各R所需的编码数据的保存位置与各R的标识符之间的对应关系,因此,当R1向显示管理器模块发送获取编码数据的请求时,获取请求携带R自身的标识符,显示管理器能够根据R1的标识符和对应关系,查找对R1所需的编码数据3B的保存位置,并返回R1端,以使R1端能够从编码数据的保存位置中获取所需的编码数据3B。
需要说明的是,在R1第一次从GPU POOL系统中获取编码数据后,建立R1与GPUPOOL中用于保存R1编码数据的保存位置的传输链路1;在GPU POOL中用于保存R1编码数据的保存位置接收到新的编码数据之后,GPU POOL将新的编码数据通过传输链路1直接发送给R1,无需R1再请求。
步骤208、R1根据编码数据3B的保存位置,从GPU POOL中获取编码数据3B,解码后显示登录成功的画面R1窗口画面3B1。
需要说明的是,在用户使用R1、R2和R3登录VM1时,显示管理器均控制GPU POOL系统建立与R1、R2和R3对应的显示模块1、显示模块2和显示模块3,并将R1、R2和R3的显示信息分别发送给显示模块1、显示模块2和显示模块3。此外,建立R1与GPU POOL中用于保存R1编码数据的保存位置的传输链路1,R2与GPU POOL中用于保存R2编码数据的保存位置的传输链路2和R3与GPU POOL中用于保存R3编码数据的保存位置的传输链路3。
实施例二
图3是本公开实施例提供的一种数据处理方法流程图,本实施例对应的使用场景是用户使用同一个用户账号登录多个R端,并在多个R端使用同一个应用软件。具体以用户使用同一个用户账号登录R1、R2和R3后,在R1和R3上使用聊天软件B进行聊天为例,对处理步骤进行说明。如图3所示的数据处理方法,包括以下步骤:
一、用户使用用户账号A登录到R1、R2和R3,在R1上打开聊天软件B。
在本场景中,具体包括以下步骤:
步骤301、用户使用用户账号A登录R1、R2和R3;
具体登录的过程参考实施例一中的相关描述,不再赘述。
步骤302、R1向VM1发送用户操作信息(针对聊天软件B的操作),其中,用户操作信息(操作聊天软件B)中携带操作动作。
其中,用户操作信息(针对聊天软件B的操作)中携带R1端的标识码、用户账号A、操作动作(针对聊天软件B的操作)和R3的显示信息。
步骤303、VM1中的显示管理器模块,判断是否已经存在操作动作(针对聊天软件B的操作)对应的业务模块;
由于用户未使用R2和R3打开聊天软件B,因此,VM1模块未建立业务模块C;显示管理器模块创建业务模块C,业务模块C与操作动作(针对聊天软件B的操作)绑定,并将R1的操作动作(针对聊天软件B的操作)和R1的标识码发送给业务模块C
步骤304、显示管理器模块判断GPU POOL系统中是否存在R1对应的显示模块;
由于R1在登录时已经建立显示模块1,因此,无需再为R1创建显示模块。
显示管理器在R1在登录时就已经将R1的显示信息发送给显示模块1.
步骤305、业务模块C执行操作动作(针对聊天软件B的操作),生成窗口画面的渲染指令C1,并将窗口画面的渲染指令C1发送给窗口管理器;窗口管理器根据窗口画面的渲染指令C1,生成桌面的渲染指令C11,并将桌面的渲染指令C11发送给GPU POOL模块。
步骤306、GPU POOL模块根据桌面的渲染指令C11进行渲染,生成原始的窗口画面C1;以及根据R1标识符找到显示模块1,将原始的窗口画面C1发送给显示模块1。
步骤307、显示模块1根据R1的显示信息,对原始的窗口画面C1进行画面缩放等调整,生成R1窗口画面C1;将R1窗口画面C1发送给S2模块进行编码并保存编码数据1C;
编码数据1C在GPU POOL系统中的保存位置为IP地址+端口。
步骤308、R1通过已建立的传输链路1,从GPU POOL中获取编码数据1C,解码后显示聊天软件B的聊天界面1C。
二、用户继续在R3上运行聊天软件B。(附图中没有体现)
在本场景中,具体包括以下步骤:
步骤309、R3向VM1发送用户操作信息(针对聊天软件B的操作),其中,用户操作信息(操作聊天软件B)中携带操作动作。
其中,用户操作信息(针对聊天软件B的操作)中携带R3端的标识码、操作动作(针对聊天软件B的操作)。
步骤310、VM1中的业务模块C接收到用户操作信息(针对聊天软件B的操作)。
可以理解的,显示管理器在R3在登录时,就已经控制GPU POOL系统建立显示模块3,并将R3的显示信息发送给显示模块3。.
步骤311、业务模块C中的聊天软件B根据用户的操作动作,生成窗口画面的渲染指令3C1,并将窗口画面的渲染指令3C1发送给窗口管理器,窗口管理器根据窗口画面的渲染指令3C1,生成桌面的渲染指令3C11,并将桌面的渲染指令3C11发送给GPU POOL模块。
步骤312、GPU POOL模块根据桌面的渲染指令3C11进行渲染,生成原始的窗口画面3C1;以及根据R3标识符找到显示模块3,将原始的窗口画面3C1发送给显示模块3。
步骤313、显示模块3根据R3的显示信息,对原始的窗口画面3C1进行画面缩放等调整后,生成R3窗口画面3C1;将R3窗口画面3C1发送给S2模块进行编码并保存编码数据3C,编码数据3C在GPU POOL系统中的保存位置为IP地址+端口。
步骤3143、R3通过已建立的传输链路3,从GPU POOL中获取编码数据3C,解码后显示聊天软件B的聊天界面,即窗口画面3C1。
实施例三
图4是本公开实施例提供的一种数据处理方法流程图,本实施例对应的使用场景是用户使用同一个用户账号登录多个R端,并在多个R端使用同一个应用软件,应用软件接收到新消息。具体以用户使用同一个用户账号登录R1、R2和R3后,在R1和R3上使用聊天软件B进行聊天,聊天软件B接收到一个新消息,R1和R3均弹出聊天消息的提示消息为例,对处理步骤进行说明。如图4所示的数据处理方法,包括以下步骤:
步骤401、用户使用同一个用户账号登录R1、R2和R3。
步骤402、VM中的显示管理器模块接收到一条新消息事件,通过解析该新消息事件,确定为聊天软件B的新消息,将该新消息事件发给聊天软件B对应的业务模块C。
步骤403、业务模块C中的聊天软件B从新消息事件中解析出新消息,并生成新消息提示界面的窗口画面的渲染指令C1,并将窗口画面的渲染指令C1发送给窗口管理器;由窗口管理器根据窗口画面的渲染指令C1生成桌面的渲染指令C11,并将桌面的渲染指令C11发送给GPU POOL模块。
步骤404、GPU POOL模块根据桌面的渲染指令C11进行渲染,生成原始的窗口画面C1;以及根据R1和R3标识符找到显示模块1和显示模块3,将原始的窗口画面3B发送给显示模块1和显示模块3。
步骤405、显示模块1和显示模块3分别根据R1的显示信息和R3的显示信息,对原始的窗口画面C1进行画面缩放等调整后,生成R1窗口画面C11和R3窗口画面C13;分别将R1窗口画面C11和R3窗口画面C13发送给S2模块进行编码并保存编码数据11C和13C;
编码数据11C和13C在GPU POOL系统中的保存位置为IP地址+端口。
步骤406、R1和R3,分别通过已建立的传输链路1和传输链路3,从GPU POOL中获取编码数据11C和13C,解码后在R1和R3分别显示聊天软件B的聊天界面-窗口画面C11和窗口画面C13。
实施例四
图5是本公开实施例提供的一种数据处理系统结构图,如图5所示的数据处理系统50包括:第一服务器501、第二服务器502和第一终端设备503,可选的,该系统还可以包括第二终端设备504。
图6是本公开实施例提供的一种数据处理方法流程图,该方法是基于图5的系统架构,如图6所示的数据处理方法包括以下步骤:
步骤601、终端设备向第一服务器发送第一操作消息;所述第一操作消息中包括终端设备的设备标识、账号信息、基于所述账号信息的第一操作动作和终端设备的显示信息;
步骤602、第一服务器根据所述设备标识,控制第二服务器根据所述显示信息建立与所述设备标识对应的显示模块,并根据所述第一操作消息生成第一渲染指令,并将所述第一渲染指令发送给第二服务器,其中,所述第一渲染指令中携带设备标识;
步骤603、第二服务器根据所述第一渲染指令进行渲染,生成第一原始窗口画面,并根据所述设备标识将所述第一原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第一原始窗口画面进行调整,生成第一调整窗口画面,并将所述第一调整窗口画面进行编码得到第一编码数据,并获取所述第一编码数据的第一保存位置;
步骤604、终端设备获取所述第一保存位置,并根据所述第一保存位置从第二服务器中获取所述第一编码数据,并在解码后显示所述第一调整窗口画面。
在一个实施例中,该方法还包括:
终端设备向第一服务器发送基于预设应用的第二操作消息;所述第二操作消息携带有第二操作动作;
第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器;
第二服务器根据所述第二渲染指令进行渲染,生成第二原始窗口画面,并根据所述设备标识将所述第二原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第二原始窗口画面进行调整,生成第二调整窗口画面,并将所述第二调整窗口画面进行编码得到第二编码数据,并获取所述第二编码数据的第二保存位置;
终端设备获取所述第二保存位置,并根据所述第二保存位置从第二服务器中获取所述第二编码数据,并在解码后显示所述第二调整窗口画面。
在一个实施例中,第一服务器在根据所述第二操作消息,生成第二渲染指令之前,该方法还包括:
第一服务器基于所述账号信息运行所述预设应用,查询本地是否存储存在与所述第二操作消息对应的业务模块;
若不存在,则根据所述第二操作消息创建对应的业务模块;
所述第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器包括:
所述业务模块根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器。
在一个实施例中,终端设备至少包括第一终端设备和第二终端设备,第一终端设备对应第一设备标识和第一显示信息,第一设备标识对应第一显示模块和第二显示信息,第二终端设备对应第二设备标识,第二设备标识对应第二显示模块。
在一个实施例中,该方法还包括:
第一服务器监测消息事件;
当第一服务器监测到与所述预设应用对应的消息事件时,基于消息事件生成第三渲染指令,将所述第三渲染指令发送给第二服务器;
第二服务器基于所述第三渲染指令进行渲染,得到第三原始窗口画面,并根据第一设备标识和第二设备标识将所述第三原始窗口画面分别发送给第一显示模块和第二显示模块;第一显示模块和第二显示模块分别根据所述第一显示信息和第二显示信息对所述第三原始窗口画面进行调整,生成第三调整窗口画面和第四调整窗口画面;将所述第三调整窗口画面和所述第四调整窗口画面进行编码得到第三编码数据和第四编码数据,并获取所述第三编码数据的第三保存位置和所述第四编码数据的第四保存位置;
所述第一终端设备获取所述第三保存位置,并根据所述第三保存位置从第二服务器中获取所述第三编码数据,并在解码后显示所述第三调整窗口画面,并且,
所述第二终端设备获取所述第四保存位置,并根据所述第四保存位置从第二服务器中获取所述第四编码数据,并在解码后显示所述第四调整窗口画面。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
Claims (10)
1.一种数据处理系统,其特征在于,所述系统包括第一服务器、第二服务器和终端设备,
终端设备,用于向第一服务器发送第一操作消息;所述第一操作消息中包括终端设备的设备标识、账号信息、基于所述账号信息的第一操作动作和终端设备的显示信息;
第一服务器,用于根据所述设备标识,控制第二服务器根据所述显示信息建立与所述设备标识对应的显示模块,并根据所述第一操作消息生成第一渲染指令,并将所述第一渲染指令发送给第二服务器,其中,所述第一渲染指令中携带设备标识;
第二服务器,用于根据所述第一渲染指令进行渲染,生成第一原始窗口画面,并根据所述设备标识将所述第一原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第一原始窗口画面进行调整,生成第一调整窗口画面,并将所述第一调整窗口画面进行编码得到第一编码数据,并获取所述第一编码数据的第一保存位置;
终端设备获取所述第一保存位置,并根据所述第一保存位置从第二服务器中获取所述第一编码数据,并在解码后显示所述第一调整窗口画面。
2.根据权利要求1所述的系统,其特征在于,
终端设备,还用于向第一服务器发送基于预设应用的第二操作消息;所述第二操作消息携带有第二操作动作;
第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器;
第二服务器根据所述第二渲染指令进行渲染,生成第二原始窗口画面,并根据所述设备标识将所述第二原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第二原始窗口画面进行调整,生成第二调整窗口画面,并将所述第二调整窗口画面进行编码得到第二编码数据,并获取所述第二编码数据的第二保存位置;
终端设备获取所述第二保存位置,并根据所述第二保存位置从第二服务器中获取所述第二编码数据,并在解码后显示所述第二调整窗口画面。
3.根据权利要求2所述的系统,其特征在于,所述第一服务器在根据所述第二操作消息,生成第二渲染指令之前,
第一服务器,还用于基于所述账号信息运行所述预设应用,查询本地是否存储存在与所述第二操作消息对应的业务模块;
若不存在,则根据所述第二操作消息创建对应的业务模块;
所述第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器包括:
所述业务模块根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器。
4.根据权利要求1-3任一项所述的系统,其特征在于,所述终端设备至少包括第一终端设备和第二终端设备,第一终端设备对应第一设备标识和第一显示信息,第一设备标识对应第一显示模块和第二显示信息,第二终端设备对应第二设备标识,第二设备标识对应第二显示模块。
5.根据权利要求4所述的系统,其特征在于,
第一服务器,还用于监测消息事件;
当第一服务器监测到与预设应用对应的消息事件时,基于消息事件生成第三渲染指令,将所述第三渲染指令发送给第二服务器;
第二服务器基于所述第三渲染指令进行渲染,得到第三原始窗口画面,并根据第一设备标识和第二设备标识将所述第三原始窗口画面分别发送给第一显示模块和第二显示模块;第一显示模块和第二显示模块分别根据所述第一显示信息和第二显示信息对所述第三原始窗口画面进行调整,生成第三调整窗口画面和第四调整窗口画面;将所述第三调整窗口画面和所述第四调整窗口画面进行编码得到第三编码数据和第四编码数据,并获取所述第三编码数据的第三保存位置和所述第四编码数据的第四保存位置;
所述第一终端设备获取所述第三保存位置,并根据所述第三保存位置从第二服务器中获取所述第三编码数据,并在解码后显示所述第三调整窗口画面,并且,
所述第二终端设备获取所述第四保存位置,并根据所述第四保存位置从第二服务器中获取所述第四编码数据,并在解码后显示所述第四调整窗口画面。
6.一种数据处理方法,应用于数据处理系统,其特征在于,所述系统包括第一服务器、第二服务器和终端设备,所述方法包括:
终端设备向第一服务器发送第一操作消息;所述第一操作消息中包括终端设备的设备标识、账号信息、基于所述账号信息的第一操作动作和终端设备的显示信息;
第一服务器根据所述设备标识,控制第二服务器根据所述显示信息建立与所述设备标识对应的显示模块,并根据所述第一操作消息生成第一渲染指令,并将所述第一渲染指令发送给第二服务器,其中,所述第一渲染指令中携带设备标识;
第二服务器根据所述第一渲染指令进行渲染,生成第一原始窗口画面,并根据所述设备标识将所述第一原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第一原始窗口画面进行调整,生成第一调整窗口画面,并将所述第一调整窗口画面进行编码得到第一编码数据,并获取所述第一编码数据的第一保存位置;
终端设备获取所述第一保存位置,并根据所述第一保存位置从第二服务器中获取所述第一编码数据,并在解码后显示所述第一调整窗口画面。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
终端设备向第一服务器发送基于预设应用的第二操作消息;所述第二操作消息携带有第二操作动作;
第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器;
第二服务器根据所述第二渲染指令进行渲染,生成第二原始窗口画面,并根据所述设备标识将所述第二原始窗口画面发送给对应的显示模块;所述显示模块根据所述显示信息对所述第二原始窗口画面进行调整,生成第二调整窗口画面,并将所述第二调整窗口画面进行编码得到第二编码数据,并获取所述第二编码数据的第二保存位置;
终端设备获取所述第二保存位置,并根据所述第二保存位置从第二服务器中获取所述第二编码数据,并在解码后显示所述第二调整窗口画面。
8.根据权利要求7所述的方法,其特征在于,所述第一服务器在根据所述第二操作消息,生成第二渲染指令之前,所述方法还包括:
第一服务器基于所述账号信息运行所述预设应用,查询本地是否存储存在与所述第二操作消息对应的业务模块;
若不存在,则根据所述第二操作消息创建对应的业务模块;
所述第一服务器根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器包括:
所述业务模块根据所述第二操作消息,生成第二渲染指令,并将所述第二渲染指令发送给第二服务器。
9.根据权利要求6-8任一项所述的方法,其特征在于,所述终端设备至少包括第一终端设备和第二终端设备,第一终端设备对应第一设备标识和第一显示信息,第一设备标识对应第一显示模块和第二显示信息,第二终端设备对应第二设备标识,第二设备标识对应第二显示模块。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
第一服务器监测消息事件;
当第一服务器监测到与预设应用对应的消息事件时,基于消息事件生成第三渲染指令,将所述第三渲染指令发送给第二服务器;
第二服务器基于所述第三渲染指令进行渲染,得到第三原始窗口画面,并根据第一设备标识和第二设备标识将所述第三原始窗口画面分别发送给第一显示模块和第二显示模块;第一显示模块和第二显示模块分别根据所述第一显示信息和第二显示信息对所述第三原始窗口画面进行调整,生成第三调整窗口画面和第四调整窗口画面;将所述第三调整窗口画面和所述第四调整窗口画面进行编码得到第三编码数据和第四编码数据,并获取所述第三编码数据的第三保存位置和所述第四编码数据的第四保存位置;
所述第一终端设备获取所述第三保存位置,并根据所述第三保存位置从第二服务器中获取所述第三编码数据,并在解码后显示所述第三调整窗口画面,并且,
所述第二终端设备获取所述第四保存位置,并根据所述第四保存位置从第二服务器中获取所述第四编码数据,并在解码后显示所述第四调整窗口画面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010403472.7A CN111752655B (zh) | 2020-05-13 | 2020-05-13 | 数据处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010403472.7A CN111752655B (zh) | 2020-05-13 | 2020-05-13 | 数据处理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111752655A CN111752655A (zh) | 2020-10-09 |
CN111752655B true CN111752655B (zh) | 2024-06-04 |
Family
ID=72674396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010403472.7A Active CN111752655B (zh) | 2020-05-13 | 2020-05-13 | 数据处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111752655B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113687962A (zh) * | 2021-08-20 | 2021-11-23 | 济南浪潮数据技术有限公司 | 一种请求处理方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108401134A (zh) * | 2012-12-25 | 2018-08-14 | Vid拓展公司 | 播放视频的方法、终端和系统 |
CN108897596A (zh) * | 2018-07-05 | 2018-11-27 | 北京景行锐创软件有限公司 | 一种图形界面传输方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10949222B2 (en) * | 2017-05-30 | 2021-03-16 | Citrix Systems, Inc. | System and method for displaying customized user guides in a virtual client application |
-
2020
- 2020-05-13 CN CN202010403472.7A patent/CN111752655B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108401134A (zh) * | 2012-12-25 | 2018-08-14 | Vid拓展公司 | 播放视频的方法、终端和系统 |
CN108897596A (zh) * | 2018-07-05 | 2018-11-27 | 北京景行锐创软件有限公司 | 一种图形界面传输方法及装置 |
Non-Patent Citations (2)
Title |
---|
基于虚拟化云计算的3D图形渲染系统架构与性能研究;朴钦浩;杨华民;陈纯毅;;长春师范大学学报;20190420(第04期);全文 * |
渲染器与Web服务器耦合实现远程体渲染的交互优化;高瞻;孙万捷;王杰华;蒋峥峥;;中国图象图形学报;20170316(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111752655A (zh) | 2020-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10009303B2 (en) | Message push method and apparatus | |
JP4363847B2 (ja) | インタラクティブ・テレビ用のデジタル・テレビ・アプリケーション・プロトコル | |
CN103283250B (zh) | 一种视频重定向的方法、装置、系统 | |
US20080016155A1 (en) | One-Click Universal Screen Sharing | |
CN108965932B (zh) | 一种连麦窗口展示方法及装置 | |
US10223062B1 (en) | Method and apparatus of capturing a screen image of a remotely managed machine | |
CN109309842B (zh) | 直播数据处理方法和装置、计算机设备和存储介质 | |
JP2010508734A (ja) | リモートインターラクションに応答してビデオコンテンツを配信するためのアーキテクチャー | |
GB2321729A (en) | Requests from one computer for processing on another processed by intermediate server to reduce network traffic | |
CN111694625B (zh) | 一种车盒向车机投屏的方法和设备 | |
CN112486620A (zh) | 跨进程离屏渲染方法、装置、电子设备及存储介质 | |
CN106101794A (zh) | 一种虚拟桌面视频数据的处理方法、装置及系统 | |
US11061540B2 (en) | Remote support service with smart whiteboard | |
CN103513858A (zh) | 远程协助方法及装置 | |
CN112843680A (zh) | 画面显示方法、装置、终端设备及存储介质 | |
CN111752655B (zh) | 数据处理系统及方法 | |
CN111475240B (zh) | 数据处理方法及系统 | |
CN113778590B (zh) | 远程协助方法、装置、电子设备及介质 | |
CN111580988A (zh) | 开放平台的实现方法、装置、存储介质和计算机设备 | |
CN111491210A (zh) | 数据处理方法、装置及系统 | |
WO2023071749A1 (zh) | 参数调整方法、装置、存储介质及电子装置 | |
CN111111175A (zh) | 一种游戏画面生成方法、装置和移动终端 | |
CN115437810A (zh) | 渲染任务处理方法、装置、设备和介质 | |
CN107959824A (zh) | 一种监控视频处理方法、物理服务器及存储介质 | |
CN111414238A (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 |