CN113254051B - 多终端点对点推送方法 - Google Patents
多终端点对点推送方法 Download PDFInfo
- Publication number
- CN113254051B CN113254051B CN202110783598.6A CN202110783598A CN113254051B CN 113254051 B CN113254051 B CN 113254051B CN 202110783598 A CN202110783598 A CN 202110783598A CN 113254051 B CN113254051 B CN 113254051B
- Authority
- CN
- China
- Prior art keywords
- terminal
- mirror image
- server
- image
- version
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提出了一种多终端点对点推送方法,包括:第一终端通过第一镜像启动操作系统,与服务器建立网络连接并发送用于拷贝第二镜像的请求,从服务器上拷贝第二镜像;第一终端获取第二终端发送的用于拷贝第二镜像的请求,向第二终端输出第二镜像;第一终端通过第二镜像启动操作系统,接收服务器推送的更新文件,基于更新文件对第二镜像进行版本更新,得到第三镜像;第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件,使得第二终端基于更新文件对第二镜像进行版本更新,得到第三镜像。本方案由服务器已经同步好的终端向一个终端推送,通过多对一提高了镜像推送效率。
Description
技术领域
本申请涉及虚拟机技术领域,特别是涉及多终端点对点推送方法。
背景技术
随着网络技术以及软件技术的发展,计算机的应用已经不再局限于本地。用户终端的桌面可以进行虚拟化,并通过使用一个瘦终端运行远程桌面连接软件,连接到云计算中心获取虚拟桌面服务。这样,云计算中心可以统一管理虚拟桌面,提升数据安全性、可靠性及可维护性。
现有技术中云计算中心在管理虚拟桌面时经常会碰到虚拟桌面需要不断更新的需求,例如升级软件,添加数据等,这时就需要频繁的更新用于生成虚拟桌面时所使用的操作系统镜像,这个问题一般由云计算中心提供的镜像制作工具来解决。现有的镜像制作工具在云计算中心初始化的时候会上传一些基础操作系统镜像,然后基于这些镜像生成一个虚拟桌面,通过在桌面中安装软件等操作,更新虚拟机桌面状态数据,生成一个新的操作系统镜像,通俗的说就是无盘启动进入系统后推送镜像到本地,重启后有盘启动进入系统开始使用。
然而,这种无盘模式推送方式存在以下几点问题:1、每一次推送都由服务端向客户端发送镜像文件,在实际传输时一对一的镜像推送方式效率太低。2、常规的基础操作镜像文件都为win10、win7等镜像,这些镜像导致无盘进系统时的网络流量大。3、在有盘启动进入系统开始使用桌面的同时对虚拟桌面进行更新会造成网络占用大,导致虚拟桌面实时使用体验差。4、在多系统情况下,只有进入该系统后才会判断有没有新版本发布。
综上,针对现有技术中的当前虚拟桌面后台更新时存在的上述问题,目前尚未得到有效的解决方案。
发明内容
本申请实施例提供了多终端点对点推送方法,以至少解决由服务端向客户端单点推送镜像的方式存在的效率低的问题。
第一方面,本申请实施例提供了一种多终端点对点推送方法,所述方法包括:第一终端通过第一镜像启动操作系统,与服务器建立网络连接并发送用于拷贝第二镜像的请求,从服务器上拷贝第二镜像;
第一终端获取第二终端发送的用于拷贝第二镜像的请求,向第二终端输出第二镜像;
第一终端通过第二镜像启动操作系统,接收服务器推送的更新文件,基于更新文件对第二镜像进行版本更新,得到第三镜像;
第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件,使得第二终端基于更新文件对第二镜像进行版本更新,得到第三镜像。
第二方面,本申请实施例提供了一种针对多系统的多终端点对点推送方法, 包括以下步骤:
第四终端进入第一系统,在第一系统中接收服务器推送的更新文件;
第四终端判断其本地磁盘中除第一系统外是否有其他第二系统;
若判断为是,第四终端基于更新文件对至少一第二系统进行版本更新,得到已版本更新的第二系统;
第四终端重启进入任一已版本更新的第二系统,在其本地磁盘中将已版本更新的第二系统差异推送给第一系统;
第四终端获取第二终端用于拷贝更新文件的请求,向第二终端输出更新文件。
第三方面,本申请实施例提供了一种针对多系统的多终端点对点推送装置,包括:接收模块,使第四终端进入第一系统,在第一系统中接收服务器推送的更新文件;
判断模块,使第四终端判断其本地磁盘中除第一系统外是否有其他第二系统;
更新模块,若判断为是,使第四终端基于更新文件对至少一第二系统进行版本更新,得到已版本更新的第二系统;第四终端重启进入任一已版本更新的第二系统,在其本地磁盘中将已版本更新的第二系统差异推送给第一系统;
推送模块,使第四终端获取第二终端用于拷贝更新文件的请求,向第二终端输出更新文件。
第四方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行第一方面所述的多终端点对点推送方法和/或第二方面所述的针对多系统的多终端点对点推送方法。
第五方面,本申请实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为由处理器运行时执行第一方面所述的多终端点对点推送方法和/或第二方面所述的针对多系统的多终端点对点推送方法。
本发明的主要贡献和创新点如下:
1、本方案提出了一种多终端点对点推送方法,由服务器、同步完成的终端共同向一个终端推送,通过多对一提高了镜像推送效率。
2、本方案在无盘启动前定制winPE或者Linux镜像来代替win7、win10镜像,通过小镜像无盘启动减少进系统时的网络消耗,可以快速进入系统开始推送镜像
3、本方案提出了一种多镜像推送本地终端的后台更新方法,利用本地终端存储主镜像与副镜像的方式,使推送在后台运行,不影响当前镜像的使用。更新完成后使用最新版本的镜像进入系统,在使用过程中后台利用磁盘读写把最新版本的镜像差异推送到另一镜像中。
4、本方案提出了针对多系统中的当前在线系统的响应式更新方法,排除当前系统对其他系统进行差异更新,重启后都是最新版本,不需要重启进入系统后再去判断有没有更新,实时响应,节省更新步骤,加速更新,使用户体验更好,使用时也更方便。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的多终端点对点推送方法的示意图;
图2是根据本申请实施例的PE更新模式流程图;
图3是根据本申请实施例的后台更新模式流程图;
图4根据本申请实施例的响应式更新流程图;
图5是根据本申请实施例的断点续传示意图;
图6是根据本申请实施例的针对多系统的多终端点对点推送装置的结构框图;
图7是根据本申请实施例的电子装置的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
为了便于理解本申请实施例的技术过程,下面对本申请实施例所涉及的名词进行解释:
终端:在下文中为了解释方便也会以客户端、客户机、用户终端表示,在本方案中,终端指的是将桌面虚拟化的用户终端;第一终端指的是从服务器中获取第二镜像、更新文件的用户终端;第二终端指的是从服务器和第一终端中获取第三镜像和/或更新文件的用户终端;第三终端指的是从服务器、第一终端、第二终端中获取第三镜像和/或更新文件的用户终端;第四终端指的是在实施例五中的客户机,只是为了起到区别于前几个终端的名称的作用,第四终端可以和第一终端表示为同一个客户机,也可以和第二终端表示为同一个客户机,也可以和第三终端表示为同一个客户机。
镜像:在下文中也可能用镜像文件、系统文件表示,在本方案中,镜像指的是从服务器上获取的系统文件,用于创建虚拟桌面;第一镜像指的是winPE终端和/或Linux终端,是一种瘦终端,只是为了镜像的推送;第二镜像指的是终端通过网络向服务器获取的新的操作系统镜像,第二镜像推送完成,客户机重启就能以第二镜像启动操作系统来使用虚拟桌面;第三镜像指的是服务器端新版本发布的系统文件,可以理解将更新文件推送给第二镜像,即可得到更新完成的第二镜像,也就是第三镜像;第四镜像指的是以第二镜像在磁盘中复制得到的系统文件,被用于:当前为第二镜像时,收到服务器的更新推送,可以在后台对第四镜像进行更新。
实施例一
本申请实施例提供了一种多终端点对点推送方法,所述方法包括以下步骤S101至S104:
步骤S101,第一终端通过第一镜像启动操作系统,与服务器建立网络连接并发送用于拷贝第二镜像的请求,从服务器上拷贝第二镜像。
在本步骤中,服务端软件运行在服务器上,第二镜像也存储于服务器上,第二镜像是指从服务器上获取的系统文件,被用于创建虚拟桌面。
推送指的是客户端(在本步骤中为第一终端)通过网络向服务器获取新的操作系统镜像,是客户端软件和服务端软件之间的网络数据交互。
镜像推送的具体包括:
第一步、服务端(服务器)的第二镜像版本更新后,通告客户端(各个客户机)当前系统有更新。
第二步、客户端向服务端请求更新的数据块索引和数据大小。
第三步、客户端向服务器请求服务列表。
第四步、客户端根据数据块索引,向服务列表中的机器请求相应的数据,写入本地的第二镜像中,更新得到第三镜像。
第五步、所有数据请求完成即完成镜像推送服务。
在第三步中,服务列表至少包括服务器本身,还可以包括其他推送完成的终端。
步骤S102,第一终端获取第二终端发送的用于拷贝第二镜像的请求,向第二终端输出第二镜像。
在步骤S102中,服务器接收第一终端上报的同步完成消息,将第一终端写入服务列表中;服务器接收第二终端发送的用于拷贝第二镜像的请求,向第二终端发送服务列表;第二终端向服务列表中的第一终端发送用于拷贝第二镜像的请求。
通过上述步骤S102,第一终端完成推送作为服务端向其他终端输出第二镜像,参考图1,当第一终端作为服务端时,服务端至少包括HDV服务器、第一终端,服务端有多台设备向第二终端推送第二镜像,那么第二终端推送完成的时间就会大大减少,也就是说,传统的方案是服务器到终端的一对一推送,而本方案中服务器加上已经同步好的第一终端向第二终端推送是一种多对一的推送,就实现了加速。
步骤S103,第一终端通过第二镜像启动操作系统,接收服务器推送的更新文件,基于更新文件对第二镜像进行版本更新,得到第三镜像。
在本步骤中,服务器发布版本更新消息至第二镜像启动的虚拟桌面上,同时推送更新文件,第一终端获取更新文件,并基于更新文件对第二镜像进行版本更新,得到第三镜像,其中,第三镜像是更新文件推送完成后最新版本的系统文件,以第三镜像启动操作系统即可使用与服务器版本同步的虚拟桌面。
步骤S104,第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件,使得第二终端基于更新文件对第二镜像进行版本更新,得到第三镜像。
在本步骤中,第一终端与服务器同步完成后做服务第二终端推送更新文件,此时服务端为服务器与第一终端,也就是多对一的推送,能减少更新文件的推送时间,且,第二终端中的第二镜像与第一终端中的第三镜像只差了更新文件的这个版本,因此推送时只推送更新的数据,也就是更新文件,而不会把所有的系统文件都推送一遍,因此实现了推送加速。
通过上述步骤S101至步骤S104,本申请提出了一种终端推送完成后作服务端向其他终端推送文件的技术方案,目前的推送方式都是服务器向客户机一对一推送,导致更新效率低,本方案通过服务器与推送完成的终端作为服务端,向客户机多对一推送的方式实现加速,并且后续对镜像有更新操作,都只推送更新的数据,不会所有的系统文件都推送一遍,提高了推送效率。
实施例二
基于步骤S101,本方案还提出了一种PE更新方法,即,用最小化系统裁剪定制得到的winPE镜像或者Linux镜像作为第一镜像。具体地,图2是根据本申请实施例的PE更新模式流程图,如图2所述,客户机的桌面虚拟化,并通过使用一个瘦终端,例如winPE或者Linux镜像运行远程桌面,进入远程桌面后启动同步程序和服务器交互,通过同步程序从服务端获取镜像数据到本地终端,完成推送重启进入相应镜像。本实施例中与现有技术的区别在于,根据最小化系统定制剪裁出winPE、Linux,在本例中最小化系统指的是只安装有让客户机能够启动并与服务器交互的最基本的部件。常规的win10、win7镜像中都会安装有开机自启的桌面程序、后台程序或者后台服务,在启动操作系统过程中会因为上述程序或者服务与服务端之间网络数据交互造成网络流量大,而最小化系统定制出来的小镜像里只包括设备开机所需必要元素以及虚拟盘驱动,基于该镜像启动操作系统生成一个虚拟桌面,通过虚拟盘驱动从服务器读取相应的系统信息,直接写入本地硬盘,因此节省了网络资源。
也就是说,winPE镜像或Linux镜像只是为了镜像的推送,因此最小化系统仅包括主板,内存条,硬盘,CPU。
PE更新方法与现有技术的区别在于,目前机器每次启动都需要通过网络从服务器上读取镜像数据,因为Win7、Win10系统进桌面会有一些开机自启的桌面程序、后台程序、后台服务,所以win7启动需要500M以上流量,win10启动需要960M以上流量。定制化裁剪过的winPE镜像只是为了镜像的推送,没有多余的网络流量消耗,只需要260M流量。与win7、win10相比,节省了2-3倍的流量数据。流量少则网络消耗就低了,启动也会更快。并且定制的小镜像只有第一次驱动需要读取镜像数据,后续开机都直接从本地启动,网络消耗为0。
实施例三
基于步骤S103,本方案还提出了一种多镜像推送本地终端的后台更新方法,即,第一终端的本地磁盘中包括了多个镜像,以其中一个镜像启动操作系统,其他的镜像被用于当接收到服务器发布的版本更新消息时,在后台进行更新,重启后进入最新版本的镜像,通过磁盘推送向上次使用的镜像进行推送,使得第一终端中的多个镜像都能在后台完成更新,不会影响到桌面的正常使用;并且,由于每次进入的镜像都是最新版本的,也无需进入桌面才知道是否需要更新。
具体地, 第一终端通过第二镜像启动操作系统,在本地磁盘中以第二镜像复制得到至少一第四镜像;第一终端接收服务器推送的更新文件,基于更新文件对至少一第四镜像进行版本更新,将至少一第四镜像更新为第三镜像。
第一终端重启进入任一第三镜像,在本地磁盘中将第三镜像差异推送给第二镜像。
在本实施例中,第二镜像、第四镜像指的是写入本地磁盘的两个系统,第四镜像由第一镜像复制得到,“第二”“第四”只是为了对两个系统进行区分,实质上两个系统没有前后、主次之分。在本例中,第二镜像、第四镜像也可以用主镜像、副镜像;当前镜像、备份镜像;初始镜像、镜像副本等表示。
在此处第四镜像的作用是:当当前操作系统为第二镜像,又恰好接收到服务器发布的版本更新消息时,可以让第四镜像在后台进行更新,此时在第二镜像对桌面进行使用不会造成桌面使用效果差的问题。需要说明的是,第四镜像也可以是多个,在后台更新时,可以同时对多个第四镜像进行更新,也可以只对其中一个第四镜像进行更新,只要在重启后能进入到最新版本的镜像,并且利用磁盘读写在后台将最新版本的镜像推送给第二镜像或其他第四镜像即可。
在本步骤中所涉及的后台更新是指桌面使用时不需要回写数据到服务端,而是在本地后台更新,因此不存在网络波动影响正常使用的问题。
具体地,在传统模式win7、win10桌面正常使用时需要和服务端实时网络交互,回写数据到服务端,镜像推送过程中会有大量的网络数据读写,会抢用带宽导致桌面正常使用时产生网络波动,操作卡顿、延迟等问题,因此桌面使用效果差,而本实施例的一大技术点在于解决了桌面体验差的问题。
此外,主副镜像模式镜像数据推送存储更安全,即使在推送过程中数据损坏,也能保证至少有一个镜像是好的,不会影响本地镜像的启动;而传统模式在推送过程中,如果出现数据损坏,后续机器无法正常启动,必须还原到上个还原点才行,严重的必须要重新全盘同步,影响了用户的正常使用。因此实施例的另一技术点在于解决了数据推送过程中数据损坏造成后续机器无法正常启动的问题。
当后台更新完成后,重启进入最新版本的第四镜像,第四镜像通过后台磁盘读写的方式推送给第二镜像,使第二镜像、第四镜像均为最新版本。也就是说,在多镜像文件的更新文件推送场景中,除当前镜像之外的其他镜像文件均可以在后台进行差异更新,得到最新版本镜像,重启进入最新版本镜像,对重启前的当前镜像进行差异推送,使客户机内的所有镜像文件均为最新版本。
也就是说,当前为主镜像时,服务器推送新版本给副镜像,副镜像更新到最新,重启机器进入副镜像,副镜像再差异推送到主镜像,主副镜像此时都为最新版本。同理,当前为副镜像时,服务器推送新版本给主镜像,主镜像更新到最新,重启机器进入主镜像,主镜像再差异推送到副镜像,主副镜像此时都是最新版本。
在本实施例中,通过本地终端存储主副镜像方式能使更新文件的推送在后台运行,不影响当前系统的使用,有效解决了在推送镜像过程中会导致当前镜像的桌面使用效果差的问题。
本实施例与现有技术的区别之处在于,参考图3,本地终端中至少存储有两个镜像,当新版本发布时,差异推送到非当前镜像的其他镜像文件进行后台差异更新,由于推送在后台运行,不会影响当前系统的使用。更新完成后,其他镜像文件都为最新版本,通过其他镜像文本启动操作系统,此时重启前的当前进行版本还是旧版本,因此本地磁盘中的最新版本的镜像文件可以通过差异推送的方式更新旧版本的镜像文件。本实施例能够实现每次登录时的镜像文件都有最新版本,且镜像文件在更新时不会影响桌面使用的有益效果,能通过实时响应节省更新步骤,加快更新优化用户的桌面使用体验。
此外,在本实施例中,本方案还提出了一种断点续传方法,参考图5,在镜像推送过程中,地终端断电关机、重启等导致推送过程中断,机器重启后,推送会从之前推送完的点开始继续推送,解决现有方案推送过程中断就会重新从0开始推送的问题。
具体地,基于磁盘文件,读写扇区,本方案以块(4096个扇区)为单位,推送镜像的同时会更新bitmap中数据块的有效性,如果出现中断,下次重新开始的时候,会检索bitmap,找到最后一个有效的数据块,从下一个块开始请求数据,实现断点续传。从图5中可以看出,断点续传能够对推送节点保护,防止异常导致推送重新开始,因此提高了推送效率。
实施例四
基于步骤S104,本申请还提出了一种多终端点对点推送下的后台更新方法,包括:第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件;第二终端通过第二镜像启动操作系统,在本地磁盘中以第二镜像复制得到至少一第四镜像;第二终端基于更新文件对至少一第四镜像进行版本更新,将至少一第四镜像更新为第三镜像。
第二终端重启进入任一第三镜像,在本地磁盘中将第三镜像差异推送给第二镜像。
在本实施例中,第二镜像、第四镜像是写入第二终端本地磁盘的两个系统文件,第四镜像由第二镜像复制得到,当当前操作系统为第二镜像且服务器对第二镜像版本更新并通告给第二终端时,第二终端向服务器请求更新的数据块索引和数据大小、服务列表,其中,服务列表中包括了服务器以及推送完成的第一终端,第二终端根据数据块索引,向服务列表中的机器请求相应的数据,写入本地的第四镜像中。由于当前操作系统为第二镜像,因此第四镜像在后台更新时不会影响桌面的使用,第四镜像更新为第三镜像。推送完成后重启进入第三镜像,利用磁盘读写在后台将最新版本的镜像推送给第二镜像。
在其他一个可行实施例中,所述方法还包括:服务器接收第二终端上报的同步完成消息,将第二终端写入服务列表中;服务器向第三终端发布版本更新消息以及服务列表;第三终端向服务列表中的第一终端、第二终端发送用于拷贝更新文件的请求。
在本实施例中,第一终端、第二终端为推送完成的客户机,服务器建立数据块索引并记录将第一终端、第二终端写入服务列表中,在对第三终端进行推送时,由服务器、第一终端、第二终端向客户机多对一推送的方式实现加速。
实施例五,基于相同的构思,本申请提供了一种针对多系统的多终端点对点推送方法,包括以下步骤:
S201、第四终端进入第一系统,在第一系统中接收服务器推送的更新文件;
S202、第四终端判断其本地磁盘中除第一系统外是否有其他第二系统;
S203、若判断为是,第四终端基于更新文件对至少一第二系统进行版本更新,得到已版本更新的第二系统;
S204、第四终端重启进入任一已版本更新的第二系统,在其本地磁盘中将已版本更新的第二系统差异推送给第一系统;
S205、第四终端向服务器上报同步完成消息,由服务器将第四终端写入服务列表中;
S206、第四终端获取第二终端用于拷贝更新文件的请求,向第二终端输出更新文件。
具体地,在实施例二中提出了一种PE更新模式,通过winPE这种小镜像重启节省网络资源,在实施例三中提出了一种后台更新模式,通过主副镜像差异化推送实现在后台的更新。而本申请实施例提出了一种PE更新模式运用在单系统或多系统更新场景以及后台更新模式运用在单系统或多系统更新场景,适用于单系统或多系统差异。现有方案在单系统中必须进入该单系统确认是否需要更新。在多系统中必须进入选中的系统确认是否需要更新,也就是说,不论单系统或者多系统,现有方案必须先进入系统才会判断有没有系统更新,然后推送镜像,推送完成后重启进入最新系统。因此在本方案中提供了PE更新模式、后台更新模式的运用场景,下面以系统A1、系统B1、系统C1、系统A2、系统B2、系统C2对单系统或多系统的更新步骤进行说明。
1、PE更新模式的运用
(1)多系统
多系统包括系统A1、系统B1、系统C1,启动系统A1后客户端收到系统B1和系统C1的版本更新通知,客户端判断出需要更新的镜像没有系统A1,则推送B1镜像的更新文件,推送完成后再推送系统C1的更新文件,此时多系统中的系统B1、系统C1都是最新版本。即,实现了除当前系统以外的其他系统能够在后台进行更新,而不用进入系统后再确认是否需要更新的技术效果。
(2)单系统
单系统为系统A1,启动系统A1后收到系统A1的版本更新通知,客户端重启就会进入winPE镜像推送系统A1的更新文件,推送完成后重启进入最新版本的系统A1。即,实现了单系统下以winPE镜像推送节省网络资源的技术效果。
2、后台更新模式的运用
(1)多系统
多系统包括系统A2、系统B2、系统C2,启动系统A2后客户端收到系统A2、系统B2和系统C2的版本更新通知,开始推送A2的主镜像的更新文件到A2的副镜像,推送完成后再推送B2的主镜像的更新文件到B2的副镜像,推送完成后再推送C2的主镜像的更新文件,此时多系统中的系统A2、系统B2、系统C2都是最新版本。即,实现了对每一系统都能够在后台进行更新,下次进入系统时能保证该系统为最新版本,而不用进入系统后再确认是否需要更新的技术效果。
(2)单系统
单系统为系统A2,启动系统A2后收到系统A2的版本更新通知,开始推送A1的主镜像的更新文件到A1的副镜像,推送完成后再重启进入A1的副镜像,通过磁盘差异推送完成对A1的主镜像的更新。
参考图4,也就是说,在本方案中,当新版本发布时,服务器会通告给本地终端,在后台更新模式不论单系统还是多系统,本地终端可以基于发布的更新文件进行差异化更新。PE更新模式会根据单系统和多系统进行不同的更新处理。当判断为单系统时,PE更新模式下次会直接进入PE镜像开始更新,当判断为多系统时,会排除当前启动系统,对其他系统开始差异更新。
实施例六
基于相同的构思,本申请还提出了一种针对多系统的多终端点对点推送装置,如图6所示,包括:
接收模块501,使第四终端进入第一系统,在第一系统中接收服务器推送的更新文件;
判断模块502,使第四终端判断其本地磁盘中除第一系统外是否有其他第二系统;
更新模块503,若判断为是,使第四终端基于更新文件对至少一第二系统进行版本更新,得到已版本更新的第二系统;第四终端重启进入任一已版本更新的第二系统,在其本地磁盘中将已版本更新的第二系统差异推送给第一系统;
推送模块504,使第四终端获取第二终端用于拷贝更新文件的请求,向第二终端输出更新文件。
实施例七
本实施例还提供了一种电子装置,参考图7,包括存储器604和处理器602,该存储器604中存储有计算机程序,该处理器602被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
具体地,上述处理器602可以包括中央处理器(CPU),或者特定集成电路(ApplicationSpecificIntegratedCircuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
其中,存储器604可以包括用于数据或指令的大容量存储器604。举例来说而非限制,存储器604可包括硬盘驱动器(HardDiskDrive,简称为HDD)、软盘驱动器、固态驱动器(SolidStateDrive,简称为SSD)、闪存、光盘、磁光盘、磁带或通用串行总线(UniversalSerialBus,简称为USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器604可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器604可在数据处理装置的内部或外部。在特定实施例中,存储器604是非易失性(Non-Volatile)存储器。在特定实施例中,存储器604包括只读存储器(Read-OnlyMemory,简称为ROM)和随机存取存储器(RandomAccessMemory,简称为RAM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(ProgrammableRead-OnlyMemory,简称为PROM)、可擦除PROM(ErasableProgrammableRead-OnlyMemory,简称为EPROM)、电可擦除PROM(ElectricallyErasableProgrammableRead-OnlyMemory,简称为EEPROM)、电可改写ROM(ElectricallyAlterableRead-OnlyMemory,简称为EAROM)或闪存(FLASH)或者两个或更多个以上这些的组合。在合适的情况下,该RAM可以是静态随机存取存储器(StaticRandom-AccessMemory,简称为SRAM)或动态随机存取存储器(DynamicRandomAccessMemory,简称为DRAM),其中,DRAM可以是快速页模式动态随机存取存储器604(FastPageModeDynamicRandomAccessMemory,简称为FPMDRAM)、扩展数据输出动态随机存取存储器(ExtendedDateOutDynamicRandomAccessMemory,简称为EDODRAM)、同步动态随机存取内存(SynchronousDynamicRandom-AccessMemory,简称SDRAM)等。
存储器604可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器602所执行的可能的计算机程序指令。
处理器602通过读取并执行存储器604中存储的计算机程序指令,以实现上述实施例中的任意一种单系统推送本地终端的后台更新方法。
可选地,上述电子装置还可以包括传输设备606以及输入输出设备608,其中,该传输设备606和上述处理器602连接,该输入输出设备608和上述处理器602连接。
传输设备606可以用来经由一个网络接收或者发送数据。上述的网络具体实例可包括电子装置的通信供应商提供的有线或无线网络。在一个实例中,传输设备包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备606可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
输入输出设备608用于输入或输出信息。例如,上述输入输出设备可以是移动终端、显示屏、音箱、麦克、鼠标、键盘或其他设备。在本实施例中,输入的信息可以是桌面管控指令、选中的操作系统、更新文件等,输出的信息可以是镜像文件版本、指令执行结果等等。
可选地,在本实施例中,上述处理器602可以被设置为通过计算机程序执行以下步骤:
S101、第一终端通过第一镜像启动操作系统,与服务器建立网络连接并发送用于拷贝第二镜像的请求,从服务器上拷贝第二镜像;
S102、第一终端获取第二终端发送的用于拷贝第二镜像的请求,向第二终端输出第二镜像;
S103、第一终端通过第二镜像启动操作系统,接收服务器推送的更新文件,基于更新文件对第二镜像进行版本更新,得到第三镜像;
S104、第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件,使得第二终端基于更新文件对第二镜像进行版本更新,得到第三镜像。
S201、第四终端进入第一系统,在第一系统中接收服务器推送的更新文件;
S202、第四终端判断其本地磁盘中除第一系统外是否有其他第二系统;
S203、若判断为是,第四终端基于更新文件对至少一第二系统进行版本更新,得到已版本更新的第二系统;
S204、第四终端重启进入任一已版本更新的第二系统,在其本地磁盘中将已版本更新的第二系统差异推送给第一系统;
S205、第四终端向服务器上报同步完成消息,由服务器将第四终端写入服务列表中;
S206、第四终端获取第二终端用于拷贝更新文件的请求,向第二终端输出更新文件。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
另外,结合上述实施例一至五,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种多终端点对点推送方法、针对多系统的多终端点对点推送方法。
本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (9)
1.一种多终端点对点推送方法,其特征在于,通过服务器与推送完成的终端作为服务端,向客户机多对一推送的方式实现加速,利用本地终端存储主镜像与副镜像的方式,使推送在后台运行,不影响当前镜像的使用,更新完成后使用最新版本的镜像进入系统,在使用过程中后台利用磁盘读写把最新版本的镜像差异推送到另一镜像中;所述方法包括:
第一终端通过第一镜像启动操作系统,与服务器建立网络连接并发送用于拷贝第二镜像的请求,从服务器上拷贝第二镜像;其中,第一镜像指的是winPE镜像和/或Linux镜像;
第一终端获取第二终端发送的用于拷贝第二镜像的请求,向第二终端输出第二镜像;其中,第二镜像指的是终端通过网络向服务器获取的新的操作系统镜像;
第一终端通过第二镜像启动操作系统,接收服务器推送的更新文件,基于更新文件对第二镜像进行版本更新,得到第三镜像;其中,第三镜像指的是服务器端新版本发布的系统文件,将更新文件推送给第二镜像,可得到更新完成的第二镜像,即第三镜像;
第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件,使得第二终端基于更新文件对第二镜像进行版本更新,得到第三镜像;其中,第四镜像指的是以第二镜像在磁盘中复制得到的系统文件,当前为第二镜像时,收到服务器的更新推送,可以在后台对第四镜像进行更新。
2.根据权利要求1所述的多终端点对点推送方法,其特征在于,“第一终端通过第一镜像启动操作系统”包括:
第一终端基于最小化系统剪裁定制winPE镜像;
第一终端根据winPE镜像无盘启动操作系统。
3.根据权利要求1所述的多终端点对点推送方法,其特征在于,在“第一终端获取第二终端发送的用于拷贝第二镜像的请求,向第二终端输出第二镜像”之前,所述方法包括:
服务器接收第一终端上报的同步完成消息,将第一终端写入服务列表中;
服务器接收第二终端发送的用于拷贝第二镜像的请求,向第二终端发送服务列表;
第二终端向服务列表中的第一终端发送用于拷贝第二镜像的请求。
4.根据权利要求1所述的多终端点对点推送方法,其特征在于,“第一终端通过第二镜像启动操作系统,接收服务器推送的更新文件,基于更新文件对第二镜像进行版本更新,得到第三镜像”包括:
第一终端通过第二镜像启动操作系统,在本地磁盘中以第二镜像复制得到至少一第四镜像;
第一终端接收服务器推送的更新文件,基于更新文件对至少一第四镜像进行版本更新,将至少一第四镜像更新为第三镜像。
5.根据权利要求4所述的多终端点对点推送方法,其特征在于,所述方法还包括:
第一终端重启进入任一第三镜像,在本地磁盘中将第三镜像差异推送给第二镜像。
6.根据权利要求3所述的多终端点对点推送方法,其特征在于,“第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件,使得第二终端基于更新文件对第二镜像进行版本更新,得到第三镜像”包括:
第一终端获取第二终端用于拷贝请求更新文件的请求,向第二终端输出更新文件;
第二终端通过第二镜像启动操作系统,在本地磁盘中以第二镜像复制得到至少一第四镜像;
第二终端基于更新文件对至少一第四镜像进行版本更新,将至少一第四镜像更新为第三镜像。
7.根据权利要求6所述的多终端点对点推送方法,其特征在于,所述方法还包括:
第二终端重启进入任一第三镜像,在本地磁盘中将第三镜像差异推送给第二镜像。
8.根据权利要求7所述的多终端点对点推送方法,其特征在于,所述方法还包括:
服务器接收第二终端上报的同步完成消息,将第二终端写入服务列表中;
服务器向第三终端发布版本更新消息以及服务列表;
第三终端向服务列表中的第一终端、第二终端发送用于拷贝更新文件的请求。
9.一种针对多系统的多终端点对点推送方法,其特征在于,用于在第四终端包括了多个系统的情况下,启动其中一个系统,其他的系统被用于当接收到服务器发布的版本更新消息时,在后台进行更新;通过服务器与推送完成的终端作为服务端,向客户机多对一推送的方式实现加速,包括以下步骤:
进入第四终端的第一系统,在第一系统中接收服务器推送的更新文件;
判断本地磁盘中除第一系统外是否有其他第二系统;
若判断为是,基于更新文件对至少一第二系统进行版本更新,得到已版本更新的第二系统;
重启进入任一已版本更新的第二系统,在本地磁盘中将已版本更新的第二系统差异推送给第一系统;
向服务器上报同步完成消息,由服务器将第四终端写入服务列表中;通过服务器与推送完成的第四终端作为服务端;向客户机以多对一推的方式推送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783598.6A CN113254051B (zh) | 2021-07-12 | 2021-07-12 | 多终端点对点推送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110783598.6A CN113254051B (zh) | 2021-07-12 | 2021-07-12 | 多终端点对点推送方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113254051A CN113254051A (zh) | 2021-08-13 |
CN113254051B true CN113254051B (zh) | 2021-09-21 |
Family
ID=77191067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110783598.6A Active CN113254051B (zh) | 2021-07-12 | 2021-07-12 | 多终端点对点推送方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254051B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567039A (zh) * | 2010-12-30 | 2012-07-11 | 上海三旗通信科技股份有限公司 | 一种双核终端的批量升级方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750157A (zh) * | 2011-04-20 | 2012-10-24 | 中兴通讯股份有限公司 | 一种应用程序加载的方法及装置 |
CN105335181A (zh) * | 2014-08-06 | 2016-02-17 | 中兴通讯股份有限公司 | 一种实现ota升级的方法和终端 |
CN104965740B (zh) * | 2015-06-29 | 2018-05-29 | 广东欧珀移动通信有限公司 | 移动终端环境数据复用方法、装置、系统及移动终端 |
CN111158751B (zh) * | 2019-12-30 | 2023-12-22 | 无锡睿勤科技有限公司 | 一种Windows环境部署方法、电子设备及存储介质 |
CN112596757A (zh) * | 2020-11-26 | 2021-04-02 | 新华三大数据技术有限公司 | 一种云桌面虚拟机代理组件升级方法、装置及存储介质 |
-
2021
- 2021-07-12 CN CN202110783598.6A patent/CN113254051B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567039A (zh) * | 2010-12-30 | 2012-07-11 | 上海三旗通信科技股份有限公司 | 一种双核终端的批量升级方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113254051A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10817386B2 (en) | Virtual machine recovery method and virtual machine management device | |
US11947429B2 (en) | Data disaster recovery method and site | |
CN111930396B (zh) | 一种基于notify机制的4G路由器中通讯模组的升级方法 | |
CN112988317B (zh) | 多模式云桌面管控方法、装置 | |
CN110532123A (zh) | HBase系统的故障转移方法及装置 | |
US10795747B2 (en) | File synchronizing service status monitoring and error handling | |
CN113138972A (zh) | 数据迁移方法及装置、存储介质及电子设备 | |
US20090164840A1 (en) | System and Method For Managing Root File System | |
US20240220224A1 (en) | Method for upgrading blockchain system, and terminal device | |
CN111104147A (zh) | 一种bmc升级方法、装置、终端及存储介质 | |
CN113746641B (zh) | 一种基于分布式存储的odx协议处理方法 | |
CN113254051B (zh) | 多终端点对点推送方法 | |
CN112711469A (zh) | 云主机迁移方法、装置、计算机设备和存储介质 | |
CN113407220B (zh) | 镜像推送本地终端的更新方法、装置 | |
CN107404511B (zh) | 集群中服务器的替换方法及设备 | |
CN113419884B (zh) | 防止bmc镜像文件损坏的方法、装置、终端及存储介质 | |
US11386043B2 (en) | Method, device, and computer program product for managing snapshot in application environment | |
US20210349651A1 (en) | Method, device, and computer program for migrating backup system | |
CN111858175A (zh) | 一种基于移动存储装置备份云平台数据的方法与设备 | |
US11876860B2 (en) | Data sharing system, data sharing method and non-transitory computer-readable recording medium for data sharing program | |
WO2023221002A1 (zh) | 基于ota的系统更新方法、装置、电子设备及存储介质 | |
CN113868679B (zh) | 一种集群的加密方法及装置 | |
CN118673078A (zh) | 一种逻辑复制槽的同步方法和相关装置 | |
CN115167769A (zh) | 一种写入数据的方法、装置及系统 | |
CN115048336A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230816 Address after: Room 2499, Building 1, No. 398 Tianmushan Road, Xihu District, Hangzhou City, Zhejiang Province, 310000 Patentee after: Hangzhou Lai Renji Technology Co.,Ltd. Address before: Room 212, block C, phase V, information port, 733 Jianshe 3rd road, Xiaoshan Economic and Technological Development Zone, Xiaoshan District, Hangzhou City, Zhejiang Province 310000 Patentee before: Zhejiang huawangjunye Technology Co.,Ltd. |