本申请涉及计算机应用技术领域,尤其涉及一种故障恢复方法、装置和计算机设备。
背景技术:
数据库高可用中间件(pgpoolii)已经实现了对象关系型数据库(postgresql)基本的主备切换模式的高可用集群,但是当上述数据库所在的主机或上述数据库自身发生故障宕机或者上述主机所连接的网络发生中断时,pgpoolii无法自动恢复数据库。
现有相关技术中,在遇到上述情形时,需要人工参与进行故障恢复,导致故障恢复的及时性较差。
技术实现要素:
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的第一个目的在于提出一种故障恢复方法,以实现在各种异常状态下自动执行数据库恢复动作,避免人为操作,提高故障恢复的及时性。
本申请的第二个目的在于提出一种故障恢复装置。
本申请的第三个目的在于提出一种计算机设备。
本申请的第四个目的在于提出一种非临时性计算机可读存储介质。
本申请的第五个目的在于提出一种计算机程序产品。
为达上述目的,本申请第一方面实施例提出了一种故障恢复方法,包括:监测本地数据库所在主机的网络连通情况;如果所述本地数据库所在主机的网络连通,则获取所述本地数据库的运行情况;根据所述本地数据库的运行情况,当所述本地数据库的运行状态出现异常时,通过数据库高可用中间件对所述本地数据库运行的异常状态进行恢复。
本申请实施例的故障恢复方法中,监测本地数据库所在主机的网络连通情况之后,如果上述本地数据库所在主机的网络连通,则获取上述本地数据库的运行情况,根据上述本地数据库的运行情况,当上述本地数据库的运行状态出现异常时,通过数据库高可用中间件对上述本地数据库运行的异常状态进行恢复,从而可以实现在各种异常状态下自动执行数据库恢复动作,避免人为操作,提高故障恢复的及时性,进而可以提高数据库集群的可用性。
为达上述目的,本申请第二方面实施例提出了一种故障恢复装置,包括:监测模块,用于监测本地数据库所在主机的网络连通情况;获取模块,用于当所述监测模块确定所述本地数据库所在主机的网络连通时,获取所述本地数据库的运行情况;恢复模块,用于根据所述获取模块获取的所述本地数据库的运行情况,当所述本地数据库的运行状态出现异常时,通过数据库高可用中间件对所述本地数据库运行的异常状态进行恢复。
本申请实施例的故障恢复装置中,监测模块监测本地数据库所在主机的网络连通情况之后,如果上述本地数据库所在主机的网络连通,则获取模块获取上述本地数据库的运行情况,然后恢复模块根据上述本地数据库的运行情况,当上述本地数据库的运行状态出现异常时,通过数据库高可用中间件对上述本地数据库运行的异常状态进行恢复,从而可以实现在各种异常状态下自动执行数据库恢复动作,避免人为操作,提高故障恢复的及时性,进而可以提高数据库集群的可用性。
为达上述目的,本申请第三方面实施例提出了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上所述的方法。
为了实现上述目的,本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法。
为了实现上述目的,本申请第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现如上所述的方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请故障恢复方法一个实施例的流程图;
图2为本申请故障恢复方法另一个实施例的流程图;
图3为本申请故障恢复方法再一个实施例的流程图;
图4为本申请故障恢复方法再一个实施例的流程图;
图5为本申请故障恢复方法再一个实施例的流程图;
图6为本申请故障恢复方法再一个实施例的流程图;
图7为本申请故障恢复装置一个实施例的结构示意图;
图8为本申请故障恢复装置另一个实施例的结构示意图;
图9为本申请计算机设备一个实施例的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
图1为本申请故障恢复方法一个实施例的流程图,如图1所示,上述故障恢复方法可以包括:
步骤101,监测本地数据库所在主机的网络连通情况。
其中,上述本地数据库可以为对象关系型数据库,例如postgresql,但本实施例并不仅限于此,本实施例对上述本地数据库的具体类型不作限定。
步骤102,如果上述本地数据库所在主机的网络连通,则获取上述本地数据库的运行情况。
步骤103,根据上述本地数据库的运行情况,当上述本地数据库的运行状态出现异常时,通过数据库高可用中间件对上述本地数据库运行的异常状态进行恢复。
其中,上述数据库高可用中间件可以为pgpoolii,但本实施例并不仅限于此,本实施例对上述数据库高可用中间件的具体类型不作限定。
上述故障恢复方法中,监测本地数据库所在主机的网络连通情况之后,如果上述本地数据库所在主机的网络连通,则获取上述本地数据库的运行情况,根据上述本地数据库的运行情况,当上述本地数据库的运行状态出现异常时,通过数据库高可用中间件对上述本地数据库运行的异常状态进行恢复,从而可以实现在各种异常状态下自动执行数据库恢复动作,避免人为操作,提高故障恢复的及时性,进而可以提高数据库集群的可用性。
图2为本申请故障恢复方法另一个实施例的流程图,如图2所示,本申请图1所示实施例中,步骤101之后,还可以包括:
步骤201,如果上述本地数据库所在主机的网络不连通,则对上述本地数据库所在主机的网络连续监测预定次数。
其中,上述预定次数可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定次数的大小不作限定,举例来说,上述预定次数可以为10次。
步骤202,在连续监测预定次数之后,如果上述本地数据库所在主机的网络连通,则获取上述本地数据库的运行情况。
图3为本申请故障恢复方法再一个实施例的流程图,如图3所示,本申请图1所示实施例中,步骤103可以包括:
步骤301,如果上述本地数据库处于运行状态,则判断上述本地数据库是否在上述本地数据库所属集群中。
如果是,则结束本次流程;如果否,即上述本地数据库不在上述本地数据库所属集群中,则执行步骤302。
步骤302,将上述本地数据库加入上述本地数据库所属集群。
也就是说,本实施例中,如果上述本地数据库由于发生故障或者其他原因,导致上述本地数据库未加入上述本地数据库所属集群,则可以在上述本地数据库处于运行状态之后,将上述本地数据库加入上述本地数据库所属集群。
图4为本申请故障恢复方法再一个实施例的流程图,如图4所示,本申请图1所示实施例步骤103可以包括:
步骤401,如果上述本地数据库处于未运行状态,则当上述数据库高可用中间件处于运行状态时,通过上述数据库高可用中间件判断上述本地数据库所属集群中的远程数据库是否正常运行。
如果是,即上述远程数据库正常运行,则执行步骤402;如果否,即上述远程数据库未正常运行,则执行步骤403。
步骤402,通过上述数据库高可用中间件启动上述本地数据库。
步骤403,通过上述数据库高可用中间件确定上述本地数据库在上述本地数据库所属集群中的节点类型。
步骤404,如果上述本地数据库在上述本地数据库所属集群中为主节点,则启动上述本地数据库。
进一步地,如果上述本地数据库在上述本地数据库所属集群中不是主节点,则等待上述本地数据库所属集群中的远程数据库正常运行之后,再通过上述数据库高可用中间件启动上述本地数据库。
也就是说,本实施例中,当上述本地数据库处于未运行状态,需要恢复启动上述本地数据库时,可以先确定上述本地数据库所属集群中的远程数据库是否正常运行,如果远程数据库正常运行,则可以直接启动本地数据库;而如果远程数据库也发生故障未正常运行,这就说明上述本地数据库所属集群中的数据库均发生故障,为了保障数据的同步,需要先启动上述本地数据库所属集群中的主节点,因此需要先确定上述本地数据库在上述本地数据库所属集群中是否为主节点,如果是,则直接启动本地数据库,而如果上述本地数据库在上述本地数据库所属集群中不是主节点,则等待上述本地数据库所属集群中的远程数据库正常运行之后,再通过上述数据库高可用中间件启动上述本地数据库。
上述实施例可以实现当本地数据库处于未运行状态时,启动上述本地数据库,提高了故障恢复的及时性,进而可以提高数据库集群的可用性。
图5为本申请故障恢复方法再一个实施例的流程图,如图5所示,本申请图2所示实施例中,步骤201之后,还可以包括:
步骤501,在连续监测预定次数之后,如果上述本地数据库所在主机的网络连通,则当上述本地数据库处于运行状态并且上述数据库高可用中间件处于未运行状态时,启动上述数据库高可用中间件。
图6为本申请故障恢复方法再一个实施例的流程图,如图6所示,本申请图2所示实施例中,步骤201之后,还可以包括:
步骤601,在连续监测预定次数之后,如果上述本地数据库所在主机的网络不连通,则停止运行上述本地数据库和上述数据库高可用中间件。
本申请实施例提供的故障恢复方法可以实现在各种异常状态下自动执行数据库恢复动作,避免人为操作,提高故障恢复的及时性,进而可以提高数据库集群的可用性。
图7为本申请故障恢复装置一个实施例的结构示意图,本申请实施例中的故障恢复装置可以实现本申请实施例提供的故障恢复方法。如图7所示,上述故障恢复装置可以包括:监测模块71、获取模块72和恢复模块73;
其中,监测模块71,用于监测本地数据库所在主机的网络连通情况;其中,上述本地数据库可以为对象关系型数据库,例如postgresql,但本实施例并不仅限于此,本实施例对上述本地数据库的具体类型不作限定。
获取模块72,用于当监测模块71确定上述本地数据库所在主机的网络连通时,获取上述本地数据库的运行情况。
恢复模块73,用于根据获取模块72获取的上述本地数据库的运行情况,当上述本地数据库的运行状态出现异常时,通过数据库高可用中间件对上述本地数据库运行的异常状态进行恢复。
其中,上述数据库高可用中间件可以为pgpoolii,但本实施例并不仅限于此,本实施例对上述数据库高可用中间件的具体类型不作限定。
上述故障恢复装置中,监测模块71监测本地数据库所在主机的网络连通情况之后,如果上述本地数据库所在主机的网络连通,则获取模块72获取上述本地数据库的运行情况,恢复模块73根据上述本地数据库的运行情况,当上述本地数据库的运行状态出现异常时,通过数据库高可用中间件对上述本地数据库运行的异常状态进行恢复,从而可以实现在各种异常状态下自动执行数据库恢复动作,避免人为操作,提高故障恢复的及时性,进而可以提高数据库集群的可用性。
图8为本申请故障恢复装置另一个实施例的结构示意图。
本实施例中,上述监测模块71,还用于当确定上述本地数据库所在主机的网络不连通时,对上述本地数据库所在主机的网络连续监测预定次数;其中,上述预定次数可以在具体实现时根据系统性能和/或实现需求等自行设定,本实施例对上述预定次数的大小不作限定,举例来说,上述预定次数可以为10次。
获取模块72,还用于在监测模块71连续监测预定次数之后,当上述本地数据库所在主机的网络连通时,获取上述本地数据库的运行情况。
进一步地,本实施例中,恢复模块73可以包括:判断子模块731和加入子模块732;
其中,判断子模块731,用于当上述本地数据库处于运行状态时,判断上述本地数据库是否在上述本地数据库所属集群中;
加入子模块732,用于当上述本地数据库不在上述本地数据库所属集群中时,将上述本地数据库加入上述本地数据库所属集群。
也就是说,本实施例中,如果上述本地数据库由于发生故障或者其他原因,导致上述本地数据库未加入上述本地数据库所属集群,则加入子模块732可以在上述本地数据库处于运行状态之后,将上述本地数据库加入上述本地数据库所属集群。
本实施例中,恢复模块73可以包括:判断子模块731、启动子模块733和确定子模块734;
其中,判断子模块731,用于当上述本地数据库处于未运行状态,并且上述数据库高可用中间件处于运行状态时,通过上述数据库高可用中间件判断上述本地数据库所属集群中的远程数据库是否正常运行;
启动子模块733,用于当判断子模块731确定上述远程数据库正常运行时,通过上述数据库高可用中间件启动上述本地数据库;
确定子模块734,用于当判断子模块731确定上述远程数据库未正常运行时,通过上述数据库高可用中间件确定上述本地数据库在上述本地数据库所属集群中的节点类型;
启动子模块733,还用于当确定子模块734确定上述本地数据库在上述本地数据库所属集群中为主节点时,启动上述本地数据库。
进一步地,如果确定子模块734确定上述本地数据库在上述本地数据库所属集群中不是主节点,则等待上述本地数据库所属集群中的远程数据库正常运行之后,启动子模块733再通过上述数据库高可用中间件启动上述本地数据库。
也就是说,本实施例中,当上述本地数据库处于未运行状态,需要恢复启动上述本地数据库时,判断子模块731可以先确定上述本地数据库所属集群中的远程数据库是否正常运行,如果远程数据库正常运行,则启动子模块733可以直接启动本地数据库;而如果远程数据库也发生故障未正常运行,这就说明上述本地数据库所属集群中的数据库均发生故障,为了保障数据的同步,启动子模块733需要先启动上述本地数据库所属集群中的主节点,因此需要确定子模块734先确定上述本地数据库在上述本地数据库所属集群中是否为主节点,如果是,则启动子模块733直接启动本地数据库,而如果上述本地数据库在上述本地数据库所属集群中不是主节点,则等待上述本地数据库所属集群中的远程数据库正常运行之后,启动子模块733再通过上述数据库高可用中间件启动上述本地数据库,从而可以实现当本地数据库处于未运行状态时,启动上述本地数据库,提高了故障恢复的及时性,进而可以提高数据库集群的可用性。
进一步地,恢复模块73,还用于在监测模块71连续监测预定次数之后,当上述本地数据库所在主机的网络连通,上述本地数据库处于运行状态并且上述数据库高可用中间件处于未运行状态时,启动上述数据库高可用中间件。
进一步地,恢复模块73,还用于在监测模块71连续监测预定次数之后,当上述本地数据库所在主机的网络不连通时,停止运行上述本地数据库和上述数据库高可用中间件。
本申请实施例提供的故障恢复装置可以实现在各种异常状态下自动执行数据库恢复动作,避免人为操作,提高故障恢复的及时性,进而可以提高数据库集群的可用性。
图9为本申请计算机设备一个实施例的结构示意图,上述计算机设备可以包括存储器、处理器及存储在上述存储器上并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时,可以实现本申请实施例提供的故障恢复方法。
上述计算机设备可以为服务器、个人计算机(personalcomputer;以下简称:pc)、平板电脑、笔记本电脑或智能手机等智能终端设备,本实施例对上述计算机设备的具体形态不作限定。
图9示出了适于用来实现本申请实施方式的示例性计算机设备12的框图。图9显示的计算机设备12仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图9所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(industrystandardarchitecture;以下简称:isa)总线,微通道体系结构(microchannelarchitecture;以下简称:mac)总线,增强型isa总线、视频电子标准协会(videoelectronicsstandardsassociation;以下简称:vesa)局域总线以及外围组件互连(peripheralcomponentinterconnection;以下简称:pci)总线。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(randomaccessmemory;以下简称:ram)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(compactdiscreadonlymemory;以下简称:cd-rom)、数字多功能只读光盘(digitalvideodiscreadonlymemory;以下简称:dvd-rom)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(localareanetwork;以下简称:lan),广域网(wideareanetwork;以下简称:wan)和/或公共网络,例如因特网)通信。如图9所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图9中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本申请实施例提供的故障恢复方法。
本申请实施例还提供一种非临时性计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时可以实现本申请实施例提供的故障恢复方法。
上述非临时性计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(readonlymemory;以下简称:rom)、可擦式可编程只读存储器(erasableprogrammablereadonlymemory;以下简称:eprom)或闪存、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、rf等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(localareanetwork;以下简称:lan)或广域网(wideareanetwork;以下简称:wan)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,可以实现本申请实施例提供的故障恢复方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(randomaccessmemory;以下简称:ram),只读存储器(readonlymemory;以下简称:rom),可擦除可编辑只读存储器(erasableprogrammablereadonlymemory;以下简称:eprom)或闪速存储器,光纤装置,以及便携式光盘只读存储器(compactdiscreadonlymemory;以下简称:cd-rom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(programmablegatearray;以下简称:pga),现场可编程门阵列(fieldprogrammablegatearray;以下简称:fpga)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。