一种业务恢复方法和相关设备与流程
- 国知局
- 2024-10-21 14:55:00
本技术实施例涉及计算机领域,尤其涉及一种业务恢复方法和相关设备。
背景技术:
1、主机通过进程来运行业务,从而为用户提供服务。在一些场景中,例如主机系统发生系统故障、升级等,进程将会重启。
2、一般来说,进程重启要经历硬件重启、硬件初始化、软件加载、软件初始化、状态恢复等过程,导致进程恢复至重启前的状态需要等待较长时间。也就是说,运行在进程上的业务将会发生较长时间的中断。
3、对于某些对时间要求较高的业务来说,较长时间的中断是无法容忍的。因此,现在亟需一种快速的业务恢复方法。
技术实现思路
1、本技术实施例提供了一种业务恢复方法与相关设备,将进程的运行状态与运行资源(用于表示业务的状态)提前存储起来,并在同一个主机上重启进程,以便实现进程的快速重启与快速状态恢复,减小业务中断的时长。
2、第一方面,本技术实施例提供了一种业务恢复方法,该方法应用于主机。主机用于运行第一主机系统和第二主机系统。其中,第一主机系统中第一进程的运行状态与运行资源存储在目标存储区域上,目标存储区域为第一主机系统与第二主机系统共用的存储区域。该方法包括:触发第二主机系统使用目标存储区域中的运行资源,启动第二进程,第二进程用于承接第一进程的目标业务。读取目标存储区域上的运行状态,根据运行状态在第二进程上恢复目标业务的状态。
3、在本技术实施例中,在主机上另外运行一个主机系统用于重启进程,第二主机系统与第一主机系统在同一个主机上,因此第二主机系统可以直接承载运行第一进程所需的软硬件环境。不需要经历硬件重启、硬件初始化、软件加载、软件初始化等过程来获取运行第一进程所需的软硬件环境,可以将进程重启的时间从分钟级压缩至秒级。
4、并且,提前将第一进程的运行资源与运行状态保存起来,可以在第二进程启动的过程中快速将第二进程恢复至第一进程重启前的状态,实现快速状态恢复。因此,通过本技术实施例提供的方法,可以将进程重启与业务状态恢复(restore)的全过程时长,从分钟级压缩至秒级,从而减小业务中断时长。
5、在一种可选的实现方式中,第一进程包括下述至少一项:虚拟机、容器或业务进程。
6、在一种可选的实现方式中,在触发第二主机系统使用目标存储区域中的运行资源,启动第二进程之前,该方法还可以包括:若发生目标事件,则启动第二主机系统。其中,目标事件包括下述至少一项:第一主机系统发生系统故障、第一主机系统接收更新指令,以及第一主机系统接收重启指令。
7、在本技术实施例中,第二主机系统在目标事件发生后启动,可以减少第二主机系统对主机中各种资源(例如算力、存储等)的占用,提升第一主机系统的运行效率。
8、在一种可选的实现方式中,在目标事件发生之前,可以将第二主机系统的内核和文件系统加载至主机的目标内存区域。若发生目标事件,则将第一主机系统中运行的指针指向目标内存区域的起始地址,启动第二主机系统。
9、在本技术实施例中,在目标事件发生之前,就将第二主机系统的内核与文件系统加载至主机的目标内存区域中。可以在目标事件发生后、第二主机系统启动的过程中,省去加载第二主机系统内核与文件系统的时间,提升第二主机系统的启动速度,减小业务中断时长。
10、在一种可选的实现方式中,在启动第二主机系统之前,可以将第一主机系统的初始化信息保存在目标存储区域中,初始化信息为第一主机系统初始化所得的结果。触发启动第二主机系统,并从目标存储区域获取初始化信息,完成第二主机系统的初始化。
11、在本技术实施例中,由于第二主机系统与第一主机系统运行在同一个主机上,所用的初始化信息相同。因此,在第二主机系统启动前将第一主机系统初始化所得的初始化信息保存下来,在第二主机系统启动的过程中就可以直接用这些初始化信息,不需要再进行相应的初始化步骤。可以减小第二主机系统启动的时长,从而减小业务中断的时长。
12、在一种可选的实现方式中,若第二主机系统还用于运行与目标业务的状态恢复无关的第三进程,则第三进程在第二进程完成目标业务的状态恢复后建立。若第二主机系统的启动包括与目标业务的状态恢复无关的设备初始化,则该设备初始化在第二进程完成目标业务的状态恢复后执行。
13、在本技术实施例中,将与目标业务状态恢复无关的进程、设备初始化等设置在第二进程完成目标业务状态恢复之后进行,可以更快的在第二进程上恢复目标业务的状态,减小业务中断的时长。
14、在一种可选的实现方式中,运行资源包括第一进程的目标数据,第一进程将目标存储区域中的目标子区域作为目标数据的存储位置,目标数据用于恢复目标业务的状态。第二进程可以读取并使用目标子区域中的目标数据,恢复目标业务的状态。
15、在本技术实施例中,将目标存储区域的目标子区域作为目标数据的存储位置,则在第二进程启动后,第二进程可以直接继承该目标子区域中的目标数据。第二进程使用目标数据的时候,可以直接使用目标子区域中的目标数据,不需要将该目标数据拷贝至新的存储区域(即第二进程使用的内存)进行读写,可以使第二进程更快速的利用目标数据,提升业务的状态恢复速度,减小业务中断的时长。
16、在一种可选的实现方式中,若发生目标事件,则将运行状态与运行资源保存至目标存储区域。其中,目标事件包括下述至少一项:第一主机系统发生系统故障、第一主机系统接收更新指令,以及第一主机系统接收重启指令。
17、在一种可选的实现方式中,在发生所述目标事件之前,第一主机系统在目标存储区域中保存运行状态与运行资源;在发生目标事件之后,第一主机系统更新目标存储区域中的运行状态与运行资源。
18、在本技术实施例中,在目标事件发生前就将运行状态与运行资源保存在目标存储区域中,并在目标事件发生后(即触发第二主机系统启动后)更新该运行状态与运行资源,就可以保证目标存储区域中存储的运行状态与运行资源为第一进程停止时最新的状态信息。第二进程根据该运行状态与运行资源就可以恢复至第一进程停止时的最新状态,实现目标业务的恢复。并且,由于提前进行了运行状态与运行资源的存储,在目标事件之后只需要进行运行状态与运行资源的更新即可,可以在目标事件后快速实现状态恢复,减小业务中断的时长。
19、在一种可选的实现方式中,在发生目标事件之后,将运行状态与运行资源保存至目标存储区域。
20、在本技术实施例中,若运行状态与运行资源的数据量较少,则可以在目标事件发生后保存运行状态与运行资源,从而简化进程恢复的流程。
21、在一种可选的实现方式中,运行状态包括第一进程的进程状态信息、设备状态和进程状态中的至少一项。
22、在一种可选的实现方式中,运行资源包括第一进程的进程内存。
23、在一种可选的实现方式中,目标存储区域包括下述至少一项:预留内存、非易失存储设备、远程存储介质。
24、第二方面,本技术实施例提供了一种主机,包括第一主机系统和第二主机系统。其中,第一主机系统中第一进程的运行状态与运行资源存储在目标存储区域上,目标存储区域为第一主机系统与第二主机系统共用的存储区域。第一主机系统用于触发第二主机系统使用目标存储区域中的运行资源,启动第二进程,第二进程用于承接第一进程的目标业务。第二主机系统用于读取目标存储区域上的运行状态,根据运行状态在第二进程上恢复目标业务的状态。
25、该主机用于执行前述第一方面的方法。
26、第三方面,本技术实施例提供了一种计算机设备,包括处理器、存储器以及总线;
27、所述处理器、存储器与所述总线相连;
28、所述处理器用于执行第一方面所述的方法。
29、第四方面,本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质中保存有程序,当计算机执行所述程序时,执行如第一方面所述的方法。
30、第五方面,本技术实施例提供了一种计算机程序产品,当该计算机程序产品在计算机上执行时,计算机执行如第一方面所述的方法。
31、第二方面至第五方面的有益效果参见第一方面,此处不再赘述。
本文地址:https://www.jishuxx.com/zhuanli/20241021/319766.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。