发明内容
本发明实施例提供一种数据共享方法及桌面云服务端,能够实现不同类型桌面云服务端之间的交互,进而实现移动终端桌面与固定终端桌面之间的数据共享,提高数据的利用率。
本发明实施例第一方面提供一种数据共享方法,包括:
第一桌面云服务端根据第一桌面云客户端发送的第一连接请求建立与第一桌面云客户端之间的通信连接,第一连接请求用于请求访问第二桌面云服务端的数据,第二桌面云服务端的数据为第二桌面云客户端所属终端存储在第二桌面云服务端上的数据;
第一桌面云服务端查询第二桌面云服务端所属服务器的服务地址;
第一桌面云服务端根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送第二连接请求,第二连接请求用于请求第二桌面云服务端建立与第一桌面云服务端之间的通信连接;
第一桌面云服务端获取第二桌面云服务端的数据,并向第一桌面云客户端提供第二桌面云服务端的数据。
在一种可能实现的方式中,第一桌面云服务端获取第二桌面云服务端的数据,并向第一桌面云客户端提供第二桌面云服务端的数据的具体过程为:
第一桌面云服务端向第二桌面云服务端发送文件获取指令,文件获取指令用于获取第二桌面云服务端的文件系统信息;
第一桌面云服务端接收第二桌面云服务端根据文件获取指令发送的第二桌面云服务端的文件系统信息。
第一桌面云服务端根据第二桌面云服务端的文件系统信息创建第二桌面云服务端的虚拟文件系统,并向第一桌面云客户端提供第二桌面云服务端的虚拟文件系统。
在这种可能实现的方式中,第一桌面云服务端根据第二桌面云服务端的文件系统信息创建第二桌面云服务端的虚拟文件系统供第一桌面云客户端的用户访问编辑,实现第一桌面云服务端与第二桌面云服务端之间的交互,第一桌面云客户端对第二桌面云服务端的间接访问,进而实现第一桌面云客户端与第二桌面云客户端之间的数据共享。
在一种可能实现的方式中,第一桌面云服务端获取第二桌面云服务端的数据,并向第一桌面云客户端提供第二桌面云服务端的数据的具体过程为:
第一桌面云服务端向第二桌面云服务端发送数据获取指令,数据获取指令用于复制第二桌面云服务端所属服务器的存储卷数据;
第一桌面云服务端接收第二桌面云服务端根据数据获取指令发送的第二桌面云服务端所属服务器的存储卷数据;
第一桌面云服务端根据第二桌面云服务端所属服务器的存储卷数据更新第一桌面云服务端所属服务器的存储卷数据;
第一桌面云服务端根据更新的第一桌面云服务端所属服务器的存储卷数据向第一桌面云客户端提供第二桌面云服务端的数据。
在这种可能实现的方式中,第一桌面云服务端直接从第二桌面云服务端中复制第二桌面云服务端所属服务器的存储卷数据,并向第一桌面云客户端的用户提供第二桌面云服务端的数据,实现第一桌面云服务端与第二桌面云服务端之间的交互,第一桌面云客户端对第二桌面云服务端的间接访问,进而实现第一桌面云客户端与第二桌面云客户端之间的数据共享。
在一种可能实现的方式中,在第一桌面云服务端向第一桌面云客户端提供第二桌面云服务端的数据之后,第一桌面云服务端可接收第一桌面云客户端发送的针对第二桌面云服务端的数据的访问编辑指令,进而实现第一桌面云客户端的用户对第二桌面云服务端的数据的访问编辑。
在一种可能实现的方式中,在第一桌面云服务端接收第一桌面云客户端发送的针对第二桌面云服务端的数据的访问编辑指令之后,第一桌面云服务端根据访问编辑指令对第二桌面云服务端的数据进行更新,并将更新后的第二桌面云服务端的数据发送至第二桌面云服务端,以使在第一桌面云服务端和第二桌面云服务端上的第二桌面云服务端的数据保持同步,实现第一桌面云服务端与第二桌面云服务端之间的交互,第一桌面云客户端对第二桌面云服务端的间接访问,进而实现第一桌面云客户端与第二桌面云客户端之间的数据共享。
在一种可能实现的方式中,第一连接请求携带第二桌面云服务端的标识信息,第一桌面云服务端根据第二桌面云服务端的标识信息查询第二桌面云服务端所属服务器的服务地址,第一桌面云服务端根据第一连接请求携带的标识信息确定第一桌面云客户端待间接访问编辑的第二桌面云服务端的数据。
在一种可能实现的方式中,第一桌面云服务端根据第一桌面云服务端的标识信息在预设映射表中确定第二桌面云服务端的标识信息,并根据第二桌面云服务端的标识信息查询第二桌面云服务端所属服务器的服务地址,其中,预设映射表包括多组第一桌面云服务端的标识信息与第二桌面云服务端的标识信息之间的映射关系。无需第一桌面云服务端选择确定第二桌面云服务端,提高处理效率。
在一种可能实现的方式中,第一桌面云客户端为移动终端的桌面云客户端,第二桌面云客户端为固定终端的桌面云客户端;或第一桌面云客户端为固定终端的桌面云客户端,第二桌面云客户端为移动终端的桌面云客户端,即第一桌面云客户端与第二桌面云客户端属于不同类型的桌面云客户端。
本发明实施例第二方面提供一种数据共享方法,包括:
第二桌面云服务端接收第一桌面云服务端发送的第二连接请求;
第二桌面云服务端根据第二连接请求建立与第一桌面云服务端之间的通信连接;
第二桌面云服务端获取第二桌面云服务端的数据,第二桌面云服务端的数据为第二桌面云客户端所属终端存储在第二桌面云服务端上的数据;
第二桌面云服务端向第一桌面云服务端提供第二桌面云服务端的数据。
在一种可能实现的方式中,第二桌面云服务端接收第一桌面云服务端发送的文件获取指令,并根据文件获取指令向第一桌面云服务端发送第二桌面云服务端的文件系统信息,以便第一桌面云服务端根据第二桌面云服务端的文件系统信息创建第二桌面云服务端的虚拟文件系统。
在一种可能实现的方式中,第二桌面云服务端接收第一桌面云服务端发送的数据获取指令,并根据数据获取指令向第一桌面云服务端发送第二桌面云服务端所属服务器的存储卷数据,以便第一桌面云服务端获取第二桌面云服务端所属服务器的存储卷数据。
在一种可能实现的方式中,第二桌面云服务端接收第一桌面云服务端发送的更新后的第二桌面云服务端的数据,并根据更新后的第二桌面云服务端的数据对第二桌面云服务端的数据进行更新,以使第二桌面云服务端的数据在第一桌面云服务端和第二桌面云服务端上同步。
在一种可能实现的方式中,第一桌面云客户端为移动终端的桌面云客户端,第二桌面云客户端为固定终端的桌面云客户端;或第一桌面云客户端为固定终端的桌面云客户端,第二桌面云客户端为移动终端的桌面云客户端,即第一桌面云客户端与第二桌面云客户端属于不同类型的桌面云客户端。
本发明实施例第三方面提供一种第一桌面云服务端,包括:
通信单元,用于根据第一桌面云客户端发送的第一连接请求建立与第一桌面云客户端之间的通信连接,第一连接请求用于请求访问第二桌面云服务端的数据,第二桌面云服务端的数据为第二桌面云客户端所属终端存储在第二桌面云服务端上的数据;
查询单元,用于查询第二桌面云服务端所属服务器的服务地址;
发送单元,用于根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送第二连接请求,第二连接请求用于请求第二桌面云服务端建立与第一桌面云服务端之间的通信连接;
获取单元,用于从第二桌面云服务端获取第二桌面云服务端的数据,并向第一桌面云客户端提供第二桌面云服务端的数据。
本发明实施例第三方面提供的第一桌面云服务端用于执行本发明实施例第一方面提供的数据共享方法,在此不再赘述。
本发明实施例第四方面提供一种第二桌面云服务端,包括:
接收单元,用于接收第一桌面云服务端发送的第二连接请求;
通信单元,用于根据第二连接请求建立与第一桌面云服务端之间的通信连接;
获取单元,用于第二桌面云服务端的数据,第二桌面云服务端的数据为第二桌面云客户端所属终端存储在第二桌面云服务端上的数据;
提供单元,用于向第一桌面云服务端提供第二桌面云服务端的数据。
本发明实施例第四方面提供的第二桌面云服务端用于执行本发明实施例第二方面提供的数据共享方法,在此不再赘述。
本发明实施例第五方面提供一种数据共享系统,包括第一桌面云客户端、第一桌面云服务端、第二桌面云客户端和第二桌面云服务端。
在本发明实施例中,通过第一桌面云服务端根据第一桌面云客户端发送的用于请求访问第二桌面云服务端的数据的连接请求建立与第一桌面云客户端之间的通信连接,并查询第二桌面云服务端所属服务器的服务地址,根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送用于请求建立第二桌面云服务端与第一桌面云服务端之间通信连接的连接请求,并在通信连接建立后,第一桌面云服务端获取第二桌面云服务端的数据并将其提供给第一桌面云服务端,由第一桌面云服务端向第一桌面云客户端提供第二桌面云服务端的数据,从而实现不同类型桌面云服务端之间的交互,进一步地实现移动终端桌面与固定终端桌面之间的数据共享,提高数据的利用率。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
云计算是一种互联网上的资源利用新方式,可为大众用户依托互联网上异构、自治的服务进行按需即取的计算,云计算的资源是动态易扩展而且虚拟化的,通过互联网提供。桌面云是合乎上述云计算定义的一种云。桌面云的定义是:“可以通过瘦客户端或者其他任何与网络相连的设备来访问跨平台的应用程序,以及整个客户桌面”。也就是说我们只需要一个瘦客户端设备,或者其他任何可以连接网络的设备,通过专用程序或者浏览器,就可以访问驻留在服务器端的个人桌面以及各种应用,并且用户体验和我们使用传统的个人电脑是一模一样的。瘦客户端指的是在客户端-服务器网络体系中的一个基本无需应用程序的计算机终端。它通过一些协议和服务器通信,进而接入局域网。本发明实施例可应用于云计算中。
请参见图1,为应用本发明实施例的场景示意图。如图1所示,该场景示意图包括用户、桌面云客户端A、桌面云客户端A对应的桌面云服务端A、桌面云客户端B以及桌面云客户端B对应的桌面云服务端B。其中,桌面云客户端A为固定终端的桌面云客户端,固定终端可以包括但不限于台式计算机、笔记本电脑等终端,固定终端的操作系统可以为Windows系统(例如Windows XP、Windows 7等),DOS系统、Linux系统、Mac OS(苹果公司开发的电脑操作系统)系统等等,固定终端的桌面可以为Windows桌面、DOS桌面、Linux桌面、Mac OS桌面等等。桌面云服务端A位于桌面云客户端A对应的服务器中的桌面云服务端。桌面云客户端B为移动终端的桌面云客户端,移动终端可以包括但不限于手机、平板电脑(pad)、智能可穿戴设备等具有操作界面的终端,移动终端的操作系统可以为Android系统、塞班系统、WindowsPhone系统、IOS(苹果公司开发的移动操作系统)系统等等,移动终端的桌面可以为Android桌面、塞班桌面、Windows Phone桌面、IOS桌面等等。桌面云服务端B位于桌面云客户端B对应的服务器中的桌面云服务端。可以理解的是,桌面云客户端为固定终端或移动终端上运行的用于管理桌面云的软件或应用程序。需要说明的是,桌面云客户端并不对数据进行存储,只是向用户展现桌面云,接收用户输入的针对桌面云的编辑指令。
桌面云服务端存储对应桌面云客户端所属终端的数据,可以包括桌面云客户端的桌面布局信息、文件系统信息、存储卷数据中的至少一种。优选的,一个桌面云服务端存储一个桌面云客户端所属终端的数据。桌面云客户端可为安装运行在固定终端或移动终端上的桌面云客户端软件或应用程序。可以理解的是,桌面云服务端为服务器上运行的用于管理桌面云的软件或应用程序,为服务器上的一部分,用于为桌面云客户端服务。某个桌面云服务端所属的服务器可包括多个桌面云服务端,每个桌面云服务端为对应的桌面云客户端服务。用户通过固定终端或移动终端上的桌面云客户端登陆到对应的服务器上,该服务器上的桌面云服务端把数据发送到桌面云客户端,实现用户通过桌面云客户端与服务器进行交互。
基于图1所示的场景示意图,现有技术中,桌面云服务端A与桌面云服务端B相互独立,不支持资源的相互访问,桌面云服务端B无法远程访问桌面云服务端A的数据,桌面云客户端A无法远程访问桌面云客户端B的数据,无法实现移动终端桌面与固定终端桌面之间的数据共享。基于图1所示的场景示意图,本发明实施例能够实现桌面云服务端A与桌面云服务端B之间的交互,进而实现桌面云客户端B与桌面云客户端A之间的数据访问,实现移动终端桌面与固定终端桌面之间的数据共享,真正实现移动办公,便于用户利用移动终端进行办公,提供数据的利用率。
基于图1所示的场景示意图,图2为本发明实施例提供的一种第一桌面云服务端的结构示意图,图3为本发明实施例提供的一种第二桌面云服务端的结构示意图。若第一桌面云服务端为图1中的桌面云服务端B,则第二桌面云服务端可为图1中的桌面云服务端A;若第一桌面云服务端为图1中的桌面云服务端A,则第二桌面云服务端可为图1中的桌面云服务端B。第一桌面云服务端与第二桌面云服务端可同时为固定终端对应的桌面云服务端,也可同时为移动终端对应的桌面云服务端,可实现固定终端桌面与移动终端桌面之间的数据共享、固定终端桌面之间的数据共享以及移动终端桌面之间的数据共享。
图2所示的第一桌面云服务端210包括存储器211、处理器212、通信模块213和通信总线214。其中,通信总线214用于实现这些组件之间的连接通信。本领域技术人员可以理解,图2所示的第一桌面云服务端的硬件结构并不构成对本发明的限定,它既可以是总线行结构,也可以是星型结构,还可以包括比图2所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,第一桌面云服务端可以为固定终端或移动终端对应的服务器的一部分。
存储器211可用于存储软件程序以及模块,处理器212通过运行存储在存储器211的软件程序以及模块,从而执行第一桌面云服务端的各种功能应用以及实现数据处理。存储器211主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序,比如声音播放程序、图像播放程序等等;数据存储区可存储根据第一桌面云服务端的使用所创建的数据(比如音频数据、电话本等)等。数据存储区还可存储第一桌面云服务端对应的桌面云客户端所属终端的数据。在具体实施方式中,存储器211可以包括易失性存储器,例如非挥发性动态随机存取内存(Nonvolatile Random AccessMemory,NVRAM)、相变化随机存取内存(Phase Change RAM,PRAM)、磁阻式随机存取内存(Magetoresistive RAM,MRAM)等,还可以包括非易失性存储器,例如至少一个磁盘存储器件、电子可擦除可编程只读存储器(Electrically Erasable Programmable Read-OnlyMemory,EEPROM)、闪存器件,例如反或闪存(NOR flash memory)或是反及闪存(NAND flashmemory)。非易失存储器储存处理器212所执行的操作系统及应用程序。所述处理器212从所述非易失存储器加载运行程序与数据到内存并将数字内容储存于大量储存装置中。所述操作系统包括用于控制和管理常规系统任务,例如内存管理、存储设备控制、电源管理等,以及有助于各种软硬件之间通信的各种组件和/或驱动器。
处理器212为第一桌面云服务端的控制中心,利用各种接口和线路连接整个用户终端的各个部分,通过运行或执行存储在存储器211内的软件程序和/或模块,以及调用存储在存储器211内的数据,以执行第一桌面云服务端的各种功能和/或处理数据。所述处理器212可以由集成电路(Integrated Circuit,IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器212可以仅包括中央处理器(Central Processing Unit,CPU),也可以是图像处理器(Graphic ProcessingUnit,GPU)及数字信号处理器(Digital Signal Processor,DSP)的组合。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信模块213用于实现第一桌面云服务端与服务器、网络、固定终端、移动终端或其它电子设备之间的通信连接。通信模块213包括通信接口,该通信接口可包括有线接口(例如,USB接口、有线网口等)和无线接口(例如无线网络接口)。在本发明实施例中,通信模块213用于实现第一桌面云服务端与第二桌面云服务端之间的通信连接、数据传输,以及第一桌面云服务端与对应桌面云客户端之间的通信连接、数据传输。
图3所示的第二桌面云服务端310包括存储器311、处理器312、通信模块313和通信总线314。其中,通信总线314用于实现这些组件之间的连接通信。本领域技术人员可以理解,图3所示的第二桌面云服务端的硬件结构并不构成对本发明的限定,它既可以是总线行结构,也可以是星型结构,还可以包括比图3所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,第二桌面云服务端可以为固定终端或移动终端对应的服务器的一部分。
存储器311可用于存储软件程序以及模块,处理器312通过运行存储在存储器311的软件程序以及模块,从而执行第二桌面云服务端的各种功能应用以及实现数据处理。存储器311主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序,比如声音播放程序、图像播放程序等等;数据存储区可存储根据第一桌面云服务端的使用所创建的数据(比如音频数据、电话本等)等。数据存储区还可存储第二桌面云服务端对应的桌面云客户端所属终端的数据。在具体实施方式中,存储器311可以包括易失性存储器,例如NVRAM、PRAM、MRAM等,还可以包括非易失性存储器,例如至少一个磁盘存储器件、EEPROM、闪存器件,例如反或闪存或是反及闪存。非易失存储器储存处理器312所执行的操作系统及应用程序。所述处理器312从所述非易失存储器加载运行程序与数据到内存并将数字内容储存于大量储存装置中。所述操作系统包括用于控制和管理常规系统任务,例如内存管理、存储设备控制、电源管理等,以及有助于各种软硬件之间通信的各种组件和/或驱动器。
处理器312为第二桌面云服务端的控制中心,利用各种接口和线路连接整个用户终端的各个部分,通过运行或执行存储在存储器311内的软件程序和/或模块,以及调用存储在存储器311内的数据,以执行第二桌面云服务端的各种功能和/或处理数据。所述处理器312可以IC组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器312可以仅包括CPU,也可以是GPU及DSP的组合。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信模块313用于实现第二桌面云服务端与服务器、网络、固定终端、移动终端或其它电子设备之间的通信连接。通信模块313包括通信接口,该通信接口可包括有线接口(例如,USB接口、有线网口等)和无线接口(例如无线网络接口)。在本发明实施例中,通信模块313用于实现第二桌面云服务端与第一桌面云服务端之间的通信连接、数据传输,以及第二桌面云服务端与对应桌面云客户端之间的通信连接、数据传输。
基于图2所示的第一桌面云服务端以及图3所示的第二桌面云服务端,下面将结合附图4-附图7对本发明实施例提供的数据共享方法进行详细介绍。
请参见图4,为本发明实施例提供的一种数据共享方法的流程示意图。结合图2所示的第一桌面云服务端和图3所示的第二桌面云服务端,存储器212、存储器312中分别存储一组程序代码,且处理器212调用存储器211中存储的程序代码,处理器312调用存储器311中存储的程序代码,用于执行所述数据共享方法,可以包括以下步骤401-步骤406。
401,第一桌面云服务端根据第一桌面云客户端发送的第一连接请求建立与第一桌面云客户端之间的通信连接,该第一连接请求用于请求访问第二桌面云服务端的数据。
具体的,第一桌面云服务端的通信模块213接收第一桌面云客户端发送的第一连接请求,该第一连接请求不仅用于第一桌面云客户端请求连接第一桌面云服务端,还用于第一桌面云客户端请求访问第二桌面云服务端以及第二桌面云服务端的数据。其中,第二桌面云服务端的数据为第二桌面云客户端所属终端存储在所述第二桌面云服务端上的数据,第二桌面云客户端为与第一桌面云客户端不同类型的桌面云客户端。可以理解的是,第二桌面云客户端与第一桌面云客户端为同一用户在不同终端上的桌面云客户端。第一桌面云服务端的通信模块213根据该第一连接请求建立与第一桌面云客户端之间的通信连接。
第一桌面云客户端在需要访问第二桌面云服务端的数据时,使用虚拟桌面基础架构(Virtual Desktop Infrastructure,VDI)桌面协议向第一桌面云服务端发送第一连接请求。第一桌面云客户端发送第一连接请求的具体过程为:第一桌面云客户端通过网关将第一桌面云客户端的鉴权信息发送至第一桌面云客户端对应的服务器,即第一桌面云服务端所属的服务器,由第一桌面云客户端对应的服务器对第一桌面云客户端的鉴权信息进行验证,在验证通过后,第一桌面云客户端通过网关向第一桌面云服务端发送第一连接请求。
402,第一桌面云服务端查询第二桌面云服务端所属服务器的服务地址。
具体的,第一桌面云服务端的处理器212根据第一连接请求查询第二桌面云服务端所属服务器的服务地址。在一种可能实现的方式中,上述第一连接请求携带第二桌面云服务端的标识信息,该标识信息可以是名称、序列号等用于标识第二桌面云服务端的信息,第一桌面云服务端的处理器212根据第二桌面云服务端的标识信息查询第二桌面云服务端所属服务器的服务地址,可选的,第一桌面云服务端还包括桌面管理系统,该桌面管理系统存储多个桌面云服务端所属服务器的服务地址,第一桌面云服务端的处理器212向桌面管理系统查询第二桌面云服务端所属服务器的服务地址。在另一种可能实现的方式中,第一桌面云服务端的存储器211存储着预设映射表,该预设映射表包括多组第一桌面云服务端的标识信息与第二桌面云服务端的标识信息之间的映射关系,即第一桌面云服务端要访问的第二桌面云服务端的标识信息已预先存储在第一桌面云服务端的存储器211中,标识信息可以是名称、序列号等,第一桌面云服务端的处理器212根据第一连接请求中第一桌面云服务端的标识信息在上述预设映射表中确定第二桌面云服务端的标识信息,并根据第二桌面云服务端的标识信息查询第二桌面云服务端所属服务器的服务地址,可选的,第一桌面云服务端还包括桌面管理系统,该桌面管理系统存储多个桌面云服务端所属服务器的服务地址,第一桌面云服务端的处理器212向桌面管理系统查询第二桌面云服务端所属服务器的服务地址。第二桌面云服务端所属服务器可包括多个桌面云服务端。
403,第一桌面云服务端根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送第二连接请求。
具体的,第一桌面云服务端的通信模块213根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送第二连接请求。该第二连接请求包括第一桌面云客户端所属终端的标识信息,用于在建立第一桌面云服务端与第二桌面云服务端之间的通信连接后,告知第二桌面云服务端哪个终端的桌面云客户端将访问第二桌面云服务端。该第二连接请求用于请求第二桌面云服务端建立与第一桌面云服务端之间的通信连接,以便第二桌面云服务端与第一桌面云服务端进行数据交互。若第一桌面云服务端的处理器212查询到多个桌面云服务端所属服务器的服务地址,则第一桌面云服务端可分别发送连接请求,请求建立多个通信连接。
404,第二桌面云服务端接收第一桌面云服务端发送的第二连接请求。
具体的,第二桌面云服务端的通信模块313接收第一桌面云服务端发送的第二连接请求。
405,第二桌面云服务端根据第二连接请求建立与第一桌面云服务端之间的通信连接。
具体的,第二桌面云服务端的处理器312根据第二连接请求建立与第一桌面云服务端之间的通信连接,该通信连接用于实现第一桌面云客户端间接访问第二桌面云服务端。
406,第一桌面云服务端获取第二桌面云服务端的数据,并向第一桌面云客户端提供第二桌面云服务端的数据。
具体的,在建立第一桌面云服务端与第二桌面云服务端之间的通信连接后,由于第二桌面云服务端的存储器311中存储着第二桌面云服务端的数据,因此第一桌面云服务端可通过通信连接从第二桌面云服务端获取第二桌面云服务端的数据,并向第一桌面云客户端提供第二桌面云服务端的数据。其中,第二桌面云服务端的数据为第二桌面云客户端所属终端存储在第二桌面云服务端的全部数据,可以包括第二桌面云客户端所属终端的桌面布局信息、桌面文件系统信息、存储卷数据中的至少一种。
在本发明实施例中,通过第一桌面云服务端根据第一桌面云客户端发送的用于请求访问第二桌面云服务端的数据的连接请求建立与第一桌面云客户端之间的通信连接,并查询第二桌面云服务端所属服务器的服务地址,根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送用于请求建立第二桌面云服务端与第一桌面云服务端之间通信连接的连接请求,并在通信连接建立后,第一桌面云服务端获取第二桌面云服务端的数据并将其提供给第一桌面云服务端,由第一桌面云服务端向第一桌面云客户端提供第二桌面云服务端的数据,从而实现不同类型桌面云服务端之间的交互,进一步地实现移动终端桌面与固定终端桌面之间的数据共享,提高数据的利用率。
请参见图5,为本发明实施例提供的另一种数据共享方法的流程示意图。图5所示的方法中,与图4所示的方法相同或相似的内容可以参考图4有关的详细描述,此处不作赘述。结合图2所示的第一桌面云服务端和图3所示的第二桌面云服务端,存储器212、存储器312中分别存储一组程序代码,且处理器212调用存储器211中存储的程序代码,处理器312调用存储器311中存储的程序代码,用于执行所述数据共享方法,可以包括以下步骤501-步骤510。
501,第一桌面云服务端根据第一桌面云客户端发送的第一连接请求建立与第一桌面云客户端之间的通信连接,该第一连接请求用于请求访问第二桌面云服务端的数据。
502,第一桌面云服务端查询第二桌面云服务端所属服务器的服务地址。
503,第一桌面云服务端根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送第二连接请求。
504,第二桌面云服务端接收第一桌面云服务端发送的第二连接请求。
505,第二桌面云服务端根据第二连接请求建立与第一桌面云服务端之间的通信连接。
506,第一桌面云服务端向第二桌面云服务端发送文件获取指令。
具体的,第一桌面云服务端的通信模块213向第二桌面云服务端发送文件获取指令,该文件获取指令用于请求第二桌面云服务端获取第二桌面云服务端的文件系统信息。可选的,第一桌面云服务端还包括存储远程代理客户端,存储远程代理客户端向第二桌面云服务端发送文件获取指令。
507,第二桌面云服务端接收文件获取指令,并根据文件获取指令获取第二桌面云服务端的文件系统信息。
具体的,第二桌面云服务端的通信模块313接收第一桌面云服务端发送的文件获取指令,第二桌面云服务端的处理器312根据文件获取指令获取第二桌面云服务端的文件系统信息。第二桌面云服务端的文件系统信息即为第二桌面云客户端所属终端存储在第二桌面云服务端上的文件系统信息。可选的,第二桌面云服务端还包括存储远程代理服务端,存储远程代理服务端根据文件获取指令获取第二桌面云服务端的文件系统信息。
508,第二桌面云服务端将第二桌面云服务端的文件系统信息发送至第一桌面云服务端。
具体的,第二桌面云服务端的通信模块313将第二桌面云服务端的文件系统信息发送至第一桌面云服务端,以便第一桌面云服务端能够获取第二桌面云服务端的文件系统信息。可选的,存储远程代理服务端将第二桌面云服务端的文件系统信息发送至第一桌面云服务端的存储远程代理客户端。
509,第一桌面云服务端接收第二桌面云服务端的文件系统信息。
具体的,第一桌面云服务端的通信模块213接收第二桌面云服务端发送的第二桌面云服务端的文件系统信息。
510,第一桌面云服务端根据第二桌面云服务端的文件系统信息创建第二桌面云服务端的虚拟文件系统,并向第一桌面云客户端提供第二桌面云服务端的虚拟文件系统。
具体的,第一桌面云服务端的处理器212根据第二桌面云服务端的文件系统信息创建第二桌面云服务端的虚拟文件系统,并向第一桌面云客户端提供第二桌面云服务端的虚拟文件系统。可选的,第一桌面云服务端的存储远程代理客户端根据第二桌面云服务端的文件系统信息创建第二桌面云服务端的虚拟文件系统。第二桌面云服务端的虚拟文件系统与第二桌面云服务端的文件系统信息在内容上是相同的,不同的是使用对象不同,第二桌面云服务端的虚拟文件系统使用对象为第一桌面云服务端和第一桌面云客户端,第二桌面云服务端的文件系统信息使用对象为第二桌面云服务端和第二桌面云客户端。第一桌面云客户端可向第一桌面云服务端获取第二桌面云服务端的虚拟文件系统并在第一桌面云客户端上显示第二桌面云服务端的虚拟文件系统,并且第一桌面云客户端可根据用户输入的针对第二桌面云服务端的虚拟文件系统的编辑指令对第二桌面云服务端的虚拟文件系统进行编辑更新,从而实现第一桌面云客户端对第二桌面云服务端的间接访问。
在本发明实施例中,通过第一桌面云服务端根据第一桌面云客户端发送的用于请求访问第二桌面云服务端的数据的连接请求建立与第一桌面云客户端之间的通信连接,并查询第二桌面云服务端所属服务器的服务地址,根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送用于请求建立第二桌面云服务端与第一桌面云服务端之间通信连接的连接请求,并在通信连接建立后,第一桌面云服务端获取第二桌面云服务端的文件系统信息并创建第二桌面云服务端的虚拟文件系统信息,将第二桌面云服务端的虚拟文件系统信息提供给第一桌面云服务端,由第一桌面云服务端向第一桌面云客户端提供第二桌面云服务端的虚拟文件系统信息,从而实现不同类型桌面云服务端之间的交互,进一步地实现移动终端桌面与固定终端桌面之间的数据共享,提高数据的利用率。
基于图5所示的实施例,可用如下步骤5011-5017对整体流程进行简单介绍,此时第一桌面云服务端所属服务器包括桌面云管理系统,第一桌面云服务端包括存储远程代理客户端;第二桌面云服务端包括文件系统、存储远程代理服务端。
5011,第一桌面云客户端通过网关连接第一桌面云服务端。
具体的,第一桌面云客户端通过网关将第一桌面云客户端的鉴权信息发送至第一桌面云客户端所属服务器的桌面云管理系统,在验证通过后,第一桌面云客户端通过网关向第一桌面云服务端发送连接请求,并建立与第一桌面云服务端之间的通信连接。
5012,第一桌面云服务端通知第一桌面云服务端中的存储远程代理客户端进行映射。
具体的,在建立第一桌面云客户端与第一桌面云服务端之间的通信连接后,第一桌面云服务端通知第一桌面云服务端中的存储远程代理客户端进行映射,即将第一桌面云服务端与第二桌面云服务端进行映射,建立第一桌面云服务端与第二桌面云服务端之间的对应关系。
5013,第一桌面云服务端中的存储远程代理客户端向桌面云管理系统查询第二桌面云服务端所属服务器的服务地址。
其中,第二桌面云服务端上存储着第二桌面云客户端所属终端的本地文件系统。
5014,桌面云管理系统向第一桌面云服务端中的存储远程代理客户端反馈第二桌面云服务端所属服务器的服务地址。
5015,第一桌面云服务端中的存储远程代理客户端根据第二桌面云服务端所属服务器的服务地址建立与第二桌面云服务端中的存储远程代理服务端之间的通信连接。
若第二桌面云服务端所属的服务器包括多个桌面云服务端,则第一桌面云服务端中的存储远程代理客户端可根据第二桌面云服务端所属服务器的服务地址建立与这些多个桌面云服务端之间的通信连接。
5016,第二桌面云服务端中的存储远程代理服务端从文件系统中获取第二桌面云客户端所属终端的本地文件系统,并将其发送至第一桌面云服务端中的存储远程代理客户端。
5017,第一桌面云服务端中的存储远程代理客户端根据第二桌面云客户端所属终端的本地文件系统创建第二桌面云服务端的虚拟文件系统,并向第一桌面云客户端提供第二桌面云服务端的虚拟文件系统。
第一桌面云客户端可访问编辑第二桌面云服务端的虚拟文件系统中的文件,每次访问编辑都是通过第一桌面云服务端中的存储远程代理客户端远程连接并访问编辑第二桌面云服务端中的存储远程代理服务端,间接访问编辑第二桌面云服务端中存储的第二桌面云客户端所属终端的本地文件。
请参见图6,为本发明实施例提供的又一种数据共享方法的流程示意图。图6所示的方法中,与图4所示的方法相同或相似的内容可以参考图4有关的详细描述,此处不作赘述。结合图2所示的第一桌面云服务端和图3所示的第二桌面云服务端,存储器212、存储器312中分别存储一组程序代码,且处理器212调用存储器211中存储的程序代码,处理器312调用存储器311中存储的程序代码,用于执行所述数据共享方法,可以包括以下步骤601-步骤610。
601,第一桌面云服务端根据第一桌面云客户端发送的第一连接请求建立与第一桌面云客户端之间的通信连接,该第一连接请求用于请求访问第二桌面云服务端的数据。
602,第一桌面云服务端查询第二桌面云服务端所属服务器的服务地址。
603,第一桌面云服务端根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送第二连接请求。
604,第二桌面云服务端接收第一桌面云服务端发送的第二连接请求。
605,第二桌面云服务端根据第二连接请求建立与第一桌面云服务端之间的通信连接。
606,第一桌面云服务端向第二桌面云服务端发送数据获取指令。
具体的,第一桌面云服务端的通信模块213向第二桌面云服务端发送数据获取指令,该数据获取指令用于请求第二桌面云服务端复制第二桌面云服务端所属服务器的存储卷数据。第二桌面云服务端所属服务器的存储卷数据包括第二桌面云客户端所属终端存储在第二桌面云服务端上的数据,以及其它桌面云客户端所属终端存储在对应桌面云服务端上的数据。
607,第二桌面云服务端接收数据获取指令,并根据数据获取指令复制第二桌面云服务端所属服务器的存储卷数据。
具体的,第二桌面云服务端的通信模块313接收第一桌面云服务端发送的数据获取指令,第二桌面云服务端的处理器312根据数据获取指令复制第二桌面云服务端所属服务器的存储卷数据。
608,第二桌面云服务端将第二桌面云服务端所属服务器的存储卷数据发送至第一桌面云服务端。
具体的,第二桌面云服务端的通信模块313将第二桌面云服务端所属服务器的存储卷数据发送至第一桌面云服务端,以便第一桌面云服务端获取第二桌面云服务端所属服务器的存储卷数据。
609,第一桌面云服务端接收第二桌面云服务端所属服务器的存储卷数据,并根据第二桌面云服务端所属服务器的存储卷数据更新第一桌面云服务端所属服务器的存储卷数据。
具体的,第一桌面云服务端的通信模块213接收第二桌面云服务端发送的第二桌面云服务端所属服务器的存储卷数据,并根据第二桌面云服务端所属服务器的存储卷数据更新第一桌面云服务端所属服务器的存储卷数据。
610,第一桌面云服务端根据更新的第一桌面云服务端所属服务器的存储卷数据向第一桌面云客户端提供第二桌面云服务端的数据。
具体的,由于第一桌面云服务端将第二桌面云服务端所属服务器的存储卷数据复制到第一桌面云服务端所属服务器的存储卷数据中,并对原始第一桌面云服务端所属服务器的存储卷数据进行更新,那么在更新的第一桌面云服务端所属服务器的存储卷数据中包括第二桌面云服务端的数据,因此第一桌面云服务端根据更新的第一桌面云服务端所属服务器的存储卷数据向第一桌面云客户端提供第二桌面云服务端的数据。可选的,第一桌面云服务端根据第二桌面云服务端的标识信息在更新的第一桌面云服务端所属服务器的存储卷数据查找第二桌面云服务端的数据。第一桌面云客户端可向第一桌面云服务端获取第二桌面云服务端的数据并在第一桌面云客户端上显示第二桌面云服务端的数据,并且第一桌面云客户端可根据用户输入的针对第二桌面云服务端的数据的编辑指令对第二桌面云服务端的数据进行编辑更新,从而实现第一桌面云客户端对第二桌面云服务端的间接访问。
在本发明实施例中,通过第一桌面云服务端根据第一桌面云客户端发送的用于请求访问第二桌面云服务端的数据的连接请求建立与第一桌面云客户端之间的通信连接,并查询第二桌面云服务端所属服务器的服务地址,根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送用于请求建立第二桌面云服务端与第一桌面云服务端之间通信连接的连接请求,并在通信连接建立后,第一桌面云服务端获取第二桌面云服务端所属服务器的存储卷数据并更新第一桌面云服务端所属服务器的存储卷数据将其提供给第一桌面云服务端,由第一桌面云服务端向第一桌面云客户端提供第二桌面云服务端的数据,从而实现不同类型桌面云服务端之间的交互,进一步地实现移动终端桌面与固定终端桌面之间的数据共享,提高数据的利用率。
基于图6所示的实施例,可用如下步骤6011-6017对整体流程进行简单介绍。此时第一桌面云服务端所属服务器包括桌面云管理系统。
6011,第一桌面云客户端通过网关连接第一桌面云服务端。
具体的,第一桌面云客户端通过网关将第一桌面云客户端的鉴权信息发送至第一桌面云客户端所属服务器的桌面云管理系统,在验证通过后,第一桌面云客户端通过网关向第一桌面云服务端发送连接请求,并建立与第一桌面云服务端之间的通信连接。
6012,第一桌面云服务端向桌面云管理系统查询第二桌面云服务端所属服务器的服务地址。
其中,第二桌面云服务端上存储着第二桌面云客户端所属终端的数据。
6013,桌面云管理系统向第一桌面云服务端反馈第二桌面云服务端所属服务器的服务地址。
6014,第一桌面云服务端根据第二桌面云服务端所属服务器的服务地址建立与第二桌面云服务端之间的通信连接。
6015,第一桌面云服务端通过通信连接复制第二桌面云服务端所属服务器的存储卷数据,并更新第一桌面云服务端所属服务器的存储卷数据,并向第一桌面云客户端提供第二桌面云服务端的存储卷数据。
请参见图7,为本发明实施例提供的又一种数据共享方法的流程示意图。图7所示的方法中,与图4所示的方法相同或相似的内容可以参考图4有关的详细描述,此处不作赘述。结合图2所示的第一桌面云服务端和图3所示的第二桌面云服务端,存储器212、存储器312中分别存储一组程序代码,且处理器212调用存储器211中存储的程序代码,处理器312调用存储器311中存储的程序代码,用于执行所述数据共享方法,可以包括以下步骤701-步骤710。
701,第一桌面云服务端根据第一桌面云客户端发送的第一连接请求建立与所述第一桌面云客户端之间的通信连接,该第一连接请求用于请求访问第二桌面云服务端的数据。
702,第一桌面云服务端查询第二桌面云服务端所属服务器的服务地址。
703,第一桌面云服务端根据第二桌面云服务端所属服务器的服务地址向第二桌面云服务端发送第二连接请求。
704,第二桌面云服务端接收第一桌面云服务端发送的第二连接请求。
705,第二桌面云服务端根据第二连接请求建立与第一桌面云服务端之间的通信连接。
706,第一桌面云服务端获取第二桌面云服务端的数据,并向第一桌面云客户端提供第二桌面云服务端的数据。
707,第一桌面云服务端接收第一桌面云客户端发送的针对第二桌面云服务端的数据的访问编辑指令。
具体的,第一桌面云服务端的通信模块213接收第一桌面云客户端发送的针对第二桌面云服务端的数据的访问编辑指令。所述访问编辑指令可分为访问指令和编辑指令。
在一种可能实现的方式中,第一桌面云服务端的通信模块213接收第一桌面云客户端发送的针对第二桌面云服务端的虚拟文件系统的访问编辑指令。在另一种可能实现的方式中,第一桌面云服务端的通信模块213接收第一桌面云客户端发送的针对更新的第一桌面云服务端所属服务器的存储卷数据中的第二桌面云服务端的数据的访问编辑指令。
708,第一桌面云服务端根据访问编辑指令对第二桌面云服务端的数据进行更新。
具体的,第一桌面云服务端的处理器212根据访问编辑指令对第二桌面云服务端的数据进行更新。
709,第一桌面云服务端将更新后的第二桌面云服务端的数据发送至第二桌面云服务端。
具体的,第一桌面云服务端的通信模块213将更新后的第二桌面云服务端的数据发送至第二桌面云服务端。可选的,第一桌面云服务端的通信模块213可将对第二桌面云服务端的数据的编辑痕迹发送至第二桌面云服务端,以便第二桌面云服务端知晓第一桌面云客户端编辑了哪些数据。
710,第二桌面云服务端接收更新后的第二桌面云服务端的数据,并根据更新后的第二桌面云服务端的数据对第二桌面云服务端的数据进行更新。
具体的,第二桌面云服务端的通信模块313接收第一桌面云服务端发送的更新后的第二桌面云服务端的数据,第二桌面云服务端的处理器312根据更新后的第二桌面云服务端的数据对第二桌面云服务端的数据进行更新,以使第二桌面云服务端的数据在第一桌面云服务端与第二桌面云服务端上保持同步。
在本发明实施例中,通过在第一桌面云服务端向第一桌面云客户端提供第二桌面云服务端的数据之后,根据针对第二桌面云服务端的数据的访问编辑指令对第二桌面云服务端的数据进行更新,使得第二桌面云服务端的数据在第一桌面云服务端与第二桌面云服务端上保持同步。
请参见图8,为本发明实施例提供的另一种第一桌面云服务端的结构示意图。该第一桌面云服务端810包括通信单元811、查询单元812、发送单元813和获取单元814。
通信单元811,用于根据第一桌面云客户端发送的第一连接请求建立与所述第一桌面云客户端之间的通信连接,所述第一连接请求用于请求访问第二桌面云服务端的数据,所述第二桌面云服务端的数据为第二桌面云客户端所属终端存储在所述第二桌面云服务端上的数据。
查询单元812,用于查询所述第二桌面云服务端所属服务器的服务地址。
在一种可能实现的方式中,所述第一连接请求携带所述第二桌面云服务端的标识信息,所述查询单元812具体用于根据所述第二桌面云服务端的标识信息查询第二桌面云服务端所属服务器的服务地址。
在另一种可能实现的方式中,所述查询单元812具体用于根据所述第一桌面云服务端的标识信息在预设映射表中确定所述第二桌面云服务端的标识信息,根据所述第二桌面云服务端的标识信息查询所述第二桌面云服务端所属服务器的服务地址,所述预设映射表包括多组第一桌面云服务端的标识信息与第二桌面云服务端的标识信息之间的映射关系。
发送单元813,用于根据所述第二桌面云服务端所属服务器的服务地址向所述第二桌面云服务端发送第二连接请求,所述第二连接请求用于请求第二桌面云服务端建立与第一桌面云服务端之间的通信连接。
获取单元814,用于获取所述第二桌面云服务端的数据,并向所述第一桌面云客户端提供所述第二桌面云服务端的数据。
在一种可能实现的方式中,所述获取单元814包括指令发送单元、信息接收单元和虚拟创建单元,未在图8中标明。
指令发送单元,用于向所述第二桌面云服务端发送文件获取指令,所述文件获取指令用于获取所述第二桌面云服务端的文件系统信息。
信息接收单元,用于接收所述第二桌面云服务端根据所述文件获取指令发送的所述第二桌面云服务端的文件系统信息。
虚拟创建单元,用于根据所述第二桌面云服务端的文件系统信息创建所述第二桌面云服务端的虚拟文件系统,并向所述第一桌面云客户端提供所述第二桌面云服务端的虚拟文件系统。
在另一种可能实现的方式中,所述获取单元814包括指令发送单元、数据接收单元、数据更新单元和数据提供单元,未在图8中标明。
指令发送单元,用于向所述第二桌面云服务端发送数据获取指令,所述数据获取指令用于复制所述第二桌面云服务端所属服务器的存储卷数据;
数据接收单元,用于接收所述第二桌面云服务端根据所述数据获取指令发送的所述第二桌面云服务端所属服务器的存储卷数据;
数据更新单元,用于根据所述第二桌面云服务端所属服务器的存储卷数据更新所述第一桌面云服务端所属服务器的存储卷数据;
数据提供单元,用于根据更新的所述第一桌面云服务端所属服务器的存储卷数据向所述第一桌面云客户端提供所述第二桌面云服务端的数据。
所述第一桌面云服务端还包括接收单元和更新单元,未在图8中标明。
接收单元,用于接收所述第一桌面云客户端发送的针对所述第二桌面云服务端的数据的访问编辑指令。
更新单元,用于根据所述访问编辑指令对所述第二桌面云服务端的数据进行更新。
所述发送单元,还用于将更新后的所述第二桌面云服务端的数据发送至所述第二桌面云服务端。
请参见图9,为本发明实施例提供的另一种第二桌面云服务端的结构示意图。该第一桌面云服务端910包括接收单元911、通信单元912、获取单元913和提供单元914。
接收单元911,用于接收第一桌面云服务端发送的第二连接请求;
通信单元912,用于根据所述第二连接请求建立与所述第一桌面云服务端之间的通信连接;
获取单元913,用于获取第二桌面云服务端的数据,所述第二桌面云服务端的数据为第二桌面云客户端所属终端存储在所述第二桌面云服务端上的数据;
提供单元914,用于向所述第一桌面云服务端提供所述第二桌面云服务端的数据。
在一种可能实现的方式中,所述获取单元913具体用于接收所述第一桌面云服务端发送的文件获取指令,并根据所述文件获取指令向所述第一桌面云服务端发送所述第二桌面云服务端的文件系统信息。
在一种可能实现的方式中,所述获取单元913具体用于接收所述第一桌面云服务端发送的数据获取指令,并根据所述数据获取指令向所述第一桌面云服务端发送所述第二桌面云服务端所属服务器的存储卷数据。
提供单元914,用于向所述第一桌面云服务端提供所述第二桌面云服务端的数据。
所述接收单元911,还用于接收所述第一桌面云服务端发送的更新后的所述第二桌面云服务端的数据。
所述第二桌面云服务端还包括更新单元,未在图9中标明。
更新单元,用于根据更新后的所述第二桌面云服务端的数据对所述第二桌面云服务端的数据进行更新。
其中,所述第一桌面云客户端为移动终端的桌面云客户端,所述第二桌面云客户端为固定终端的桌面云客户端;或所述第一桌面云客户端为固定终端的桌面云客户端,所述第二桌面云客户端为移动终端的桌面云客户端。
图8所示的第一桌面云服务端和图9所示的第二桌面云服务端用于实现图4-图7所示的数据共享方法,带来的技术效果,具体原理请参见图4-图7的具体描述,此处不再赘述。
本发明实施例还提供一种数据共享系统,包括第一桌面云服务端、第一桌面云客户端、第二桌面云服务端以及第二桌面云客户端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。