页面数据备份、容灾页面显示方法及装置与流程

文档序号:24126604发布日期:2021-03-02 13:59阅读:160来源:国知局
页面数据备份、容灾页面显示方法及装置与流程

[0001]
本申请涉及互联网领域,尤其涉及一种页面数据备份、容灾页面显示方法及装置。


背景技术:

[0002]
现有技术中,为了使得前端(客户端)在后端服务器或者机房发生意外情况下时,前端依然可以正常使用,通常会采用容灾的方式来部署后端服务器,即通过将后端服务器部署在不同的地点,并将其中一个地点的服务器作为主服务器,将其中一个或多个地点的服务器作为容灾服务器,这样,当前端访问主服务器失败时,将自动切换至访问容灾服务器,以通过容灾服务器为所述前端提供服务。
[0003]
然而,在一些情况下,可能主服务器和容灾服务器都会出现故障,此时,前端将不能展示页面信息。


技术实现要素:

[0004]
有鉴于此,现提供一种页面数据备份、容灾页面显示方法及装置、计算机设备及计算机可读存储介质,以解决现有的在主服务器和容灾服务器都出现故障时,前端不能展示页面信息的问题。
[0005]
本申请提供了一种页面数据备份方法,包括:
[0006]
定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据;
[0007]
将所述容灾数据上传至云存储服务器中。
[0008]
可选地,所述页面数据备份还包括:
[0009]
定时获取预设的数据接口,并通过所述数据接口从所述数据服务器中请求对应的接口数据;
[0010]
根据所述接口数据生成静态的容灾页面数据;
[0011]
将所述容灾页面数据上传至所述云存储服务器中。
[0012]
可选地,所述页面数据备份还包括:
[0013]
配置所述容灾接口列表中包含的接口。
[0014]
本申请提供了一种容灾页面显示方法,应用于客户端中,包括:
[0015]
当所述客户端请求接口失败时,启用h5容灾页面;
[0016]
通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据;
[0017]
根据所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面
[0018]
可选地,所述通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据包括:
[0019]
通过所述h5容灾页面向预设的服务器请求容灾接口开关配置文件;
[0020]
根据请求到的开关配置文件确定容灾开关是否处于开启状态;
[0021]
若所述容灾开关处于开启状态,则通过所述h5容灾页面调用容灾接口获取云存储
服务器中存储的容灾数据。
[0022]
可选地,所述容灾页面显示方法还包括:
[0023]
若所述容灾开关处于关闭状态,则向所述云存储服务器获取静态的容灾页面数据;
[0024]
对所述容灾页面数据进行页面渲染,得到静态容灾页面。
[0025]
可选地,所述容灾页面显示方法还包括:
[0026]
当根据所述h5容灾页面与所述容灾数据进行页面渲染失败时,向所述云存储服务器获取静态的容灾页面数据;
[0027]
对所述容灾页面数据进行页面渲染,得到静态容灾页面。
[0028]
本申请还提供了一种页面数据备份装置,包括:
[0029]
获取模块,用于定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据;
[0030]
上传模块,用于将所述容灾数据上传至云存储服务器中。
[0031]
本申请还提供了一种容灾页面显示装置,应用于客户端中,包括:
[0032]
启用模块,用于当所述客户端请求接口失败时,启用h5容灾页面;
[0033]
获取模块,用于通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据;
[0034]
渲染模块,用于根据所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面。
[0035]
本申请还提供了一种计算机设备,所述计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
[0036]
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
[0037]
本申请还提供了一种页面数据显示系统,包括页面数据备份装置及容灾页面显示装置,其中:
[0038]
所述页面数据备份装置包括:获取模块,用于定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据;上传模块,用于将所述容灾数据上传至云存储服务器中;
[0039]
所述容灾页面显示装置包括:启用模块,用于当客户端请求接口失败时,启用h5容灾页面;获取模块,用于通过所述h5容灾页面调用容灾接口获取所述云存储服务器中存储的容灾数据;渲染模块,用于根据所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面。
[0040]
上述技术方案的有益效果:
[0041]
本发明实施例通过定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据;将所述容灾数据上传至云存储服务器中。本实施例中,通过预先对容灾接口对应的容灾数据进行备份,这样,当后端主服务器和容灾服务器在可用的情况下,仍然可以通过备份的容灾数据进行前端页面的展示,实现前端页面的高可用性。
附图说明
[0042]
图1为本申请所述页面数据备份方法的系统框架图的一种实施例的框架图;
[0043]
图2为本申请所述的页面数据备份方法的一种实施例的流程图;
[0044]
图3为本申请所述的页面数据备份方法的另一种实施例的流程图;
[0045]
图4为本申请一实施方式的页面数据自动备份的时序图;
[0046]
图5为本申请所述的容灾页面显示方法的一种实施例的流程图;
[0047]
图6为本申请所述的容灾页面显示方法的另一种实施例的流程图;
[0048]
图7为本申请所述的容灾页面显示方法的另一种实施例的流程图;
[0049]
图8为本申请所述的容灾页面显示方法的另一种实施例的流程图;
[0050]
图9为本申请所述的页面数据备份装置的一种实施例的模块图;
[0051]
图10为本申请所述的容灾页面显示装置的一种实施例的模块图;
[0052]
图11为本申请实施例提供的执行页面数据备份方法或容灾页面显示方法的计算机设备的硬件结构示意图。
具体实施方式
[0053]
以下结合附图与具体实施例进一步阐述本申请的优点。
[0054]
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0055]
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0056]
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
[0057]
在本申请的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本申请及区别每一步骤,因此不能理解为对本申请的限制。
[0058]
图1示意性示出了根据本申请实施例的页面数据备份方法的应用环境示意图。在示例性的实施例中,该应用环境的系统可包括用户终端10、主服务器20、容灾服务器30及云存储服务器40。其中,用户终端10具有相应的应用客户端或网页客户端,用户终端10与主服务器20、容灾服务器30及云存储服务器40形成无线或有线连接。其中,用户终端10可以为pc、手机、ipad,平板电脑、笔记本电脑、个人数字助理等。主服务器20、容灾服务器30及云存储服务器40可以为机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。
[0059]
需要说明的是,正常情况下,由主服务器20为安装在用户终端10上的客户端提供
页面服务;在主服务器20发生故障时,由容灾服务器30为安装在用户终端10上的客户端提供页面服务;当主服务器20和容灾服务器30都发生故障时,由云存储服务器40为安装在用户终端10上的客户端提供页面服务。
[0060]
参阅图2,其为本申请一实施例的页面数据备份方法的流程示意图,本方法可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。从图中可以看出,本实施例中所提供的页面数据备份方法包括:
[0061]
步骤s20、定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据。
[0062]
具体地,现有技术中,前端在展示页面时,需要先通过多个不同的接口向数据服务器中获取页面数据,然后在获取到页面数据后,对页面数据进行渲染,从而实现页面的展示。不同的接口获取到的页面数据不同,前端只有通过所有的接口都获取到对应的页面数据后,才能展示出完整的前端页面。其中,所述接口为前端与数据服务器进行数据交互的数据接口,也称api接口。所述前端可以为应用客户端或网页客户端。所述数据服务器为给前端提供展示页面所需的页面数据的服务器,该数据服务器可以为主源站内容服务器,备源站内容服务器,或者为前置的cdn(content delivery network,内容分发网络)节点服务器。
[0063]
在本实施例中,所述容灾接口列表包含有至少一个接口,该容灾接口列表中包含的接口为前端从后端数据服务器中获取页面数据中的所述多个不同接口中的核心接口。其中,该核心接口为所述不同多个接口中的比较重要的接口,即用于获取相对重要的页面数据的接口。
[0064]
示例性的,该前端以游戏中心为例,则游戏中心在显示前端页面时,由于热门游戏的前端页面一般包括热门游戏列表、游戏首页、游戏详情、游戏攻略等,则游戏中心为了显示完整的前端页面需要通过热门游戏列表接口向数据服务器获取热门游戏列表数据,需要通过游戏首页接口向数据服务器获取游戏首页数据。需要通过游戏详情接口向数据服务器获取游戏详情数据,需要通过游戏攻略接口获取游戏攻略数据。在本实施例中,可以将热门游戏列表接口、游戏首页接口、游戏详情接口、游戏攻略接口作为所述容灾接口列表中的接口,当然,也可以仅仅将将热门游戏列表接口、游戏首页接口作为所述容灾接口列表中的接口,在本实施例中不作限定。游戏中心在通过容灾接口从数据器中获取页面数据时,由于安卓端和ios端中的游戏数量不一样,所以其在通过同一个接口在安卓端和ios端下显示的页面数据是不一样的,因此,在通过接口获取页面数据时,会将双端(安卓端和ios端)的页面数据都请求过来下来,以保证后续在双端上都能够正常展示页面。可以理解的是,双端上在通过同一个接口请求页面数据的时候,会带上代表系统类型的参数sdk_type,比如参数sdk_type:1代表安卓,sdk_type:2代表ios,根据sdk_type参数双端获取到不一样的页面数据。
[0065]
此外,在本实施例中,数据服务器在通过热门游戏列表数据反馈热门游戏列表数据时,数据服务器可以提供2种配置方式来确定待反馈的热门游戏列表数据:1)用户手动在管理台后台热门游戏列表中添加游戏,分为安卓热门游戏列表,以及ios热门游戏列表,这样热门游戏列表中包含的游戏数据即为所述热门游戏列表数据。2)后台程序会自动去检查所有的游戏,根据游戏的下载量,评分,点击数等维度,按照一定的权重和算法去评判出是
否是热门游戏,最后根据ios端和安卓端上下架状态,加入到对应的热门游戏列表数据中。
[0066]
需要说明的是,该前端也可以为其他类型的客户端,比如为新闻资讯类的客户端,视频类的客户端等。
[0067]
本实施例中,由于数据服务器存储的接口数据随着时间的变化,可能会发生一定的变化,以及容灾接口列表中包含的接口可能也会发生变化,因此,在本实施例中需要通过一个定时任务来定时去获取容灾接口列表,然后依次对容灾接口列表中的接口进行遍历来获取到各个接口,每当遍历到一个接口后,即可以通过该接口向从数据服务器中请求该接口对应的页面数据。通过所述容灾接口列表中的所有接口请求得到的所有页面数据即为所述容灾数据,所述容灾数据为需要备份的页面数据。
[0068]
在一实施方式中为了便于对该容灾接口列表中包含的接口进行管理,可以将该容灾接口列表定义在统一的外部文件中,当需要对该容灾接口列表中包含的接口进行修改时,即可以直接通过更新该外部文件的方式来实现,其中,所述外部文件为存储在本地的可以进行配置的文件。
[0069]
在一示例性的实施方式中,所述页面数据备份还包括:
[0070]
配置所述容灾接口列表中包含的接口。
[0071]
具体地,为了便于用户对容灾接口列表中包含的接口进行配置,可以提供一个容灾接口配置页面,当用户需要配置容灾接口列表中包含的接口时,用户即可以通过该配置页面来添加,删除或者修改容灾接口列表中包含的接口,在用户完成接口的配置操作之后,可以生成一个配置指令,然后可以根据该配置指令完成对所述容灾接口列表中包含的接口的配置。
[0072]
本实施例中通过对容灾接口列表中包含的接口进行配置,从而可以灵活地选择需要备份的页面数据。
[0073]
步骤s20,将所述容灾数据上传至云存储服务器中。
[0074]
具体地,在获取到容灾数据后,即可以将该容灾数据上传至云存储服务器中,从而实现容灾页面数据的备份。
[0075]
需要说明的是,由于每当获取到容灾接口列表后,都会向数据服务器请求容灾数据,因此,本实施例中最终存储在云存储数据器中的容灾数据是最新的数据,即每次将容灾数据上传至云存储服务器中时,会将最新上传的容灾数据替换之前上传的容灾数据。
[0076]
本发明实施例通过定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据;将所述容灾数据上传至云存储服务器中。本实施例中,通过预先对容灾接口对应的容灾数据进行备份,这样,当后端主服务器和容灾服务器在可用的情况下,仍然可以通过备份的容灾数据进行前端页面的展示,实现前端页面的高可用性。
[0077]
在一示例性的实施方式中,参照图3,为了进一步保证前端展示页面的高可用性,所述页面数据备份方法还包括:
[0078]
步骤s30,定时获取预设的数据接口,并通过所述数据接口从所述数据服务器中请求对应的接口数据。
[0079]
具体地,所述预设的数据接口为预先设定的需要备份的兜底页面数据对应的接口,比如,在游戏中心中,为了保证在任何情况下,都可以展示热门游戏列表数据,则可以将
该该热门列表数据对应的接口作为所述预设的数据接口。
[0080]
此外,由于通过该预设的数据接口请求的接口数据随着时间的变化,可能会发生一定的变化,因此,为了使得获取到的接口数据为最新的数据,故需要通过定时任务的方式来定时获取该数据接口。
[0081]
在获取到所述数据接口后,即可以通过该数据接口与数据服务器进行数据交互,从而从该数据服务器中请求该数据接口对应的接口数据,比如,该数据接口为游戏热门列表数据接口,则可以通过该游戏热门列表数据接口从数据服务器中请求热门游戏列表数据。
[0082]
步骤s31,根据所述接口数据生成静态的容灾页面数据。
[0083]
具体地,在获取到所述接口数据后,可以根据该数据生成一个静态的容灾页面数据。在一实施例中,在生成静态的容灾页面数据时,可以先获取一个静态的容灾页面的模板,然后将该获取到的接口数据写入到该静态的容灾页面的模板的对应位置处,从而完成静态的容灾页面数据的生成。其中,该静态的容灾页面数据为前端用于展示该静态的容灾页面所需要的页面数据。该静态的容灾页面指的是网页的代码都在页面中,不需执行asp,php,jsp,.net等程序生成客户端网页代码的网页。
[0084]
可以理解的是,由于生成的容灾页面数据中的接口数据是通过定时获取到的数据接口从数据服务器中获取到的,而每当获取到接口数据就会根据所述接口数据生成静态的容灾页面数据,因此,最终存储在云存储服务器中的容灾页面数据是最新的容灾页面数据,即每次在将容灾页面数据上传至云存储服务器时,会以该容灾页面数据来替换之前上传的容灾页面数据。
[0085]
步骤s32,将所述容灾页面数据上传至所述云存储服务器中。
[0086]
具体地,在生成容灾页面数据后,即可以将该容灾页面数据上传至云存储服务器中,实现对静态的容灾页面数据进行备份,以便可以作为一个最终兜底的页面。
[0087]
本实施例通过生成容灾页面数据,并将该容灾页面数据上传至云存储服务器,从而可以进一步提高前端展示页面的高可用性。
[0088]
为了便于理解本申请,以下结合图4并以本申请应用于游戏中心来详细介绍本申请。
[0089]
游戏中心的后台会启动一个定时任务定时通过热门游戏列表接口(用于获取热门游戏列表的数据接口)向数据服务器请求热门游戏列表数据,数据服务器在接收到该请求后,会将热门游戏列表数据返回给游戏中心的后台。游戏中心的后台在获取到该热门游戏列表数据后,会将该热门游戏列表数据上传给云存储服务器。
[0090]
此外,游戏中心的后台会启动一个定时任务定时通过获取容灾接口列表,并在获取到容灾接口列表后,依次遍历容灾接口列表中包含的多个接口,并在遍历到接口后,会通过该遍历到的接口向数据服务器请求该接口对应的接口数据,数据服务器在接收到请求后,会将对应的接口数据返回给游戏中心的后台。游戏中心的后台在获取到接口数据后,会将该接口数据上传给云存储服务器。
[0091]
参阅图5,其为本申请一实施例的容灾页面显示方法的流程示意图,本方法应用于客户端中,本方法可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。从图中可以看出,本实施例中所提供的容灾页面显示方法包括:
[0092]
步骤s40,当所述客户端请求接口失败时,启用h5容灾页面。
[0093]
具体地,客户端在展示页面数据时,需要先通过接口请求的方式来获取页面数据,当客户端接口请求失败时,表明客户端没有成功获取到页面数据,此时,客户端将会启用h5容灾页面。
[0094]
其中,所述h5是html5的简称。html5是html最新的修订版本,是一种超文本标记语言。h5有两大特点,首先,强化了web网页的表现性能,其次,追加了本地数据库等web应用的功能。h5容灾页面就是利用html5制作出来的容灾页面。
[0095]
需要说明的是,该h5容灾页面是一个备份的页面,其不是客户端请求接口正常时所显示的页面。
[0096]
在本实施例中,当客户端请求的接口包括主备两条线路时,所述客户端请求主线路和备用线路接口都失败时,才会启用h5容灾页面;当客户端请求的接口仅仅包括主线路时,则所述客户端请求该线路失败时,即会启用所述h5容灾页面。
[0097]
步骤s41,通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据。
[0098]
具体地,云存储服务器中预先存储有用于客户端展示容灾压面所需的容灾数据,以便在客户端请求接口失败时,可以通过所述h5容灾页面调用容灾接口来获取所述容灾数据。其中,所述容灾接口为上述实施例的容灾接口列表中的接口,所述容灾数据和上述实施例中的容灾数据相同,在本实施例中不再赘述。
[0099]
在一示例性的实施例中,参照图6,所述通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据包括:
[0100]
步骤s50,通过所述h5容灾页面向预设的服务器请求容灾接口开关配置文件;
[0101]
具体地,所述预设的服务器为用于对运行本容灾页面显示方法的设备进行管理的设备,通过该服务器可以对客户端的容灾模式进行设定。本实施例中,为了应对不同的状况,可以为客户端配置多种容灾模式,比如,在一实施方式中,可以配置以下两种容灾模式:1)开启列表容灾页面。2)开启容灾接口。所述接口开关配置文件包含有对该两种容灾模式的配置情况。当容灾模式为开启容灾接口时,即配置该容灾模式的容灾开关处于开启状态,则在客户端请求接口失败时,将进入该容灾模式;当容灾模式为开启列表容灾页面时,即配置该容灾模式的列表容灾页面开关处于开启状态时,则在客户端请求接口失败时,将进入该容灾模式。
[0102]
步骤s51,根据请求到的开关配置文件确定容灾开关是否处于开启状态;
[0103]
步骤s52,若所述容灾开关处于开启状态,则通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据。
[0104]
具体地,所述开关配置文件中包含有容灾开关的开启状态信息,根据该开启状态信息可以判定容灾开关是处于开启状态还是关闭状态,比如,若开启状态信息为“1”,则表明该容灾开关为开启状态,若开启状态信息为“0”,则表明该容灾开关为关闭状态。当该容灾开关为开启状态时,h5容灾页面就会调用容灾接口获取云存储服务器中存储的容灾数据。
[0105]
本实施例通过请求容灾接口开关配置文件来确定容灾模式,从而使得客户端展示的容灾页面更加灵活。
[0106]
步骤s42,根据所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面。
[0107]
具体地,由于获取到的容灾数据包含有显示大部分正常页面的模块所对应的数据,因此,通过所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面,是一个包含有客户端正常所展示的页面的大部分页面模块。
[0108]
本实施例通过在客户端请求接口失败时,启用h5容灾页面实现客户端页面的展示,从而实现前端页面的高可用性。
[0109]
进一步地,在一示例性的实施方式中,参照图7,所述容灾页面显示方法还包括:
[0110]
步骤s60,若所述容灾开关处于关闭状态,则向所述云存储服务器获取静态的容灾页面数据;
[0111]
步骤s61,对所述容灾页面数据进行页面渲染,得到静态容灾页面。
[0112]
具体地,云存储服务器中还存储有用于最终兜底的静态容灾页面对应的容灾页面数据,当判定出容灾开关处于关闭状态时,客户端将启用该页面容灾模式,即从云存储服务器中获取容灾页面数据,然后对容灾页面数据进行页面渲染,得到最终兜底的静态容灾页面。
[0113]
本实施例通过容灾开关处于关闭状态时,展示静态容灾页面,从而提高前端展示页面的高可用性。
[0114]
进一步地,在一示例性的实施方式中,参照图8,所述容灾页面显示方法还包括:
[0115]
步骤s70,当根据所述h5容灾页面与所述容灾数据进行页面渲染失败时,向所述云存储服务器获取静态的容灾页面数据;
[0116]
步骤s71,对所述容灾页面数据进行页面渲染,得到静态容灾页面。
[0117]
具体地,为了避免客户端在根据所述h5容灾页面与所述容灾数据进行页面渲染时发生失败时,客户端将不能展示前端页面的缺陷,本实施例中在检测到渲染失败时,将向所述云存储服务器获取静态的容灾页面数据,然后对所述容灾页面数据进行页面渲染,得到静态容灾页面,从而进一步实现前端展示页面的高可用性。
[0118]
参阅图9所示,是本申请页面数据备份装置800一实施例的程序模块图。
[0119]
本实施例中,所述页面数据备份装置800包括一系列的存储于存储器上的计算机程序指令,当该计算机程序指令被处理器执行时,可以实现本申请各实施例的页面数据备份功能。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,页面数据备份装置800可以被划分为一个或多个模块。例如,在图9中,所述页面数据备份装置800可以被分割成获取模块801、上传模块802。其中:
[0120]
获取模块801,用于定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据。
[0121]
具体地,现有技术中,前端在展示页面时,需要先通过多个不同的接口向数据服务器中获取页面数据,然后在获取到页面数据后,对页面数据进行渲染,从而实现页面的展示。不同的接口获取到的页面数据不同,前端只有通过所有的接口都获取到对应的页面数据后,才能展示出完整的前端页面。其中,所述接口为前端与数据服务器进行数据交互的数据接口,也称api接口。所述前端可以为应用客户端或网页客户端。所述数据服务器为给前端提供展示页面所需的页面数据的服务器,该数据服务器可以为主源站内容服务器,备源
站内容服务器,或者为前置的cdn(content delivery network,内容分发网络)节点服务器。
[0122]
在本实施例中,所述容灾接口列表包含有至少一个接口,该容灾接口列表中包含的接口为前端从后端数据服务器中获取页面数据中的所述多个不同接口中的核心接口。其中,该核心接口为所述不同多个接口中的比较重要的接口,即用于获取相对重要的页面数据的接口。
[0123]
示例性的,该前端以游戏中心为例,则游戏中心在显示前端页面时,由于热门游戏的前端页面一般包括热门游戏列表、游戏首页、游戏详情、游戏攻略等,则游戏中心为了显示完整的前端页面需要通过热门游戏列表接口向数据服务器获取热门游戏列表数据,需要通过游戏首页接口向数据服务器获取游戏首页数据。需要通过游戏详情接口向数据服务器获取游戏详情数据,需要通过游戏攻略接口获取游戏攻略数据。在本实施例中,可以将热门游戏列表接口、游戏首页接口、游戏详情接口、游戏攻略接口作为所述容灾接口列表中的接口,当然,也可以仅仅将将热门游戏列表接口、游戏首页接口作为所述容灾接口列表中的接口,在本实施例中不作限定。游戏中心在通过容灾接口从数据器中获取页面数据时,由于安卓端和ios端中的游戏数量不一样,所以其在通过同一个接口在安卓端和ios端下显示的页面数据是不一样的,因此,在通过接口获取页面数据时,会将双端(安卓端和ios端)的页面数据都请求过来下来,以保证后续在双端上都能够正常展示页面。可以理解的是,双端上在通过同一个接口请求页面数据的时候,会带上代表系统类型的参数sdk_type,比如参数sdk_type:1代表安卓,sdk_type:2代表ios,根据sdk_type参数双端获取到不一样的页面数据。
[0124]
此外,在本实施例中,数据服务器在通过热门游戏列表数据反馈热门游戏列表数据时,数据服务器可以提供2种配置方式来确定待反馈的热门游戏列表数据:1)用户手动在管理台后台热门游戏列表中添加游戏,分为安卓热门游戏列表,以及ios热门游戏列表,这样热门游戏列表中包含的游戏数据即为所述热门游戏列表数据。2)后台程序会自动去检查所有的游戏,根据游戏的下载量,评分,点击数等维度,按照一定的权重和算法去评判出是否是热门游戏,最后根据ios端和安卓端上下架状态,加入到对应的热门游戏列表数据中。
[0125]
需要说明的是,该前端也可以为其他类型的客户端,比如为新闻资讯类的客户端,视频类的客户端等。
[0126]
本实施例中,由于数据服务器存储的接口数据随着时间的变化,可能会发生一定的变化,以及容灾接口列表中包含的接口可能也会发生变化,因此,在本实施例中需要通过一个定时任务来定时去获取容灾接口列表,然后依次对容灾接口列表中的接口进行遍历来获取到各个接口,每当遍历到一个接口后,即可以通过该接口向从数据服务器中请求该接口对应的页面数据。通过所述容灾接口列表中的所有接口请求得到的所有页面数据即为所述容灾数据,所述容灾数据为需要备份的页面数据。
[0127]
在一实施方式中为了便于对该容灾接口列表中包含的接口进行管理,可以将该容灾接口列表定义在统一的外部文件中,当需要对该容灾接口列表中包含的接口进行修改时,即可以直接通过更新该外部文件的方式来实现,其中,所述外部文件为存储在本地的可以进行配置的文件。
[0128]
在一示例性的实施方式中,为了便于用于设置所述遮罩参数信息,所述页面数据
备份装置800还包括:配置模块。
[0129]
所述配置模块,用于配置所述容灾接口列表中包含的接口。
[0130]
具体地,为了便于用户对容灾接口列表中包含的接口进行配置,可以提供一个容灾接口配置页面,当用户需要配置容灾接口列表中包含的接口时,用户即可以通过该配置页面来添加,删除或者修改容灾接口列表中包含的接口,在用户完成接口的配置操作之后,可以生成一个配置指令,然后可以根据该配置指令完成对所述容灾接口列表中包含的接口的配置。
[0131]
本实施例中通过对容灾接口列表中包含的接口进行配置,从而可以灵活地选择需要备份的页面数据。
[0132]
上传模块802,用于将所述容灾数据上传至云存储服务器中。
[0133]
具体地,在获取到容灾数据后,即可以将该容灾数据上传至云存储服务器中,从而实现容灾页面数据的备份。
[0134]
需要说明的是,由于每当获取到容灾接口列表后,都会向数据服务器请求容灾数据,因此,本实施例中最终存储在云存储数据器中的容灾数据是最新的数据,即每次将容灾数据上传至云存储服务器中时,会将最新上传的容灾数据替换之前上传的容灾数据。
[0135]
本发明实施例通过定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据;将所述容灾数据上传至云存储服务器中。本实施例中,通过预先对容灾接口对应的容灾数据进行备份,这样,当后端主服务器和容灾服务器在可用的情况下,仍然可以通过备份的容灾数据进行前端页面的展示,实现前端页面的高可用性。
[0136]
在一示例性的实施方式中,为了进一步保证前端展示页面的高可用性,所述页面数据备份装置800还包括:请求模块、生成模块。
[0137]
所述请求模块,用于定时获取预设的数据接口,并通过所述数据接口从所述数据服务器中请求对应的接口数据。
[0138]
具体地,所述预设的数据接口为预先设定的需要备份的兜底页面数据对应的接口,比如,在游戏中心中,为了保证在任何情况下,都可以展示热门游戏列表数据,则可以将该该热门列表数据对应的接口作为所述预设的数据接口。
[0139]
此外,由于通过该预设的数据接口请求的接口数据随着时间的变化,可能会发生一定的变化,因此,为了使得获取到的接口数据为最新的数据,故需要通过定时任务的方式来定时获取该数据接口。
[0140]
在获取到所述数据接口后,即可以通过该数据接口与数据服务器进行数据交互,从而从该数据服务器中请求该数据接口对应的接口数据,比如,该数据接口为游戏热门列表数据接口,则可以通过该游戏热门列表数据接口从数据服务器中请求热门游戏列表数据。
[0141]
所述生成模块,用于根据所述接口数据生成静态的容灾页面数据。
[0142]
具体地,在获取到所述接口数据后,可以根据该数据生成一个静态的容灾页面数据。在一实施例中,在生成静态的容灾页面数据时,可以先获取一个静态的容灾页面的模板,然后将该获取到的接口数据写入到该静态的容灾页面的模板的对应位置处,从而完成静态的容灾页面数据的生成。其中,该静态的容灾页面数据为前端用于展示该静态的容灾
页面所需要的页面数据。该静态的容灾页面指的是网页的代码都在页面中,不需执行asp,php,jsp,.net等程序生成客户端网页代码的网页。
[0143]
可以理解的是,由于生成的容灾页面数据中的接口数据是通过定时获取到的数据接口从数据服务器中获取到的,而每当获取到接口数据就会根据所述接口数据生成静态的容灾页面数据,因此,最终存储在云存储服务器中的容灾页面数据是最新的容灾页面数据,即每次在将容灾页面数据上传至云存储服务器时,会以该容灾页面数据来替换之前上传的容灾页面数据。
[0144]
所述上传模块802,还用于将所述容灾页面数据上传至所述云存储服务器中。
[0145]
具体地,在生成容灾页面数据后,即可以将该容灾页面数据上传至云存储服务器中,实现对静态的容灾页面数据进行备份,以便可以作为一个最终兜底的页面。
[0146]
本实施例通过生成容灾页面数据,并将该容灾页面数据上传至云存储服务器,从而可以进一步提高前端展示页面的高可用性。
[0147]
参阅图10所示,是本申请容灾页面显示装置900一实施例的程序模块图。
[0148]
本实施例中,所述容灾页面显示装置900包括一系列的存储于存储器上的计算机程序指令,当该计算机程序指令被处理器执行时,可以实现本申请各实施例的容灾页面数据显示功能。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,容灾页面显示装置900可以被划分为一个或多个模块。例如,在图10中,所述容灾页面显示装置900可以被分割成启用模块901、获取模块902及渲染模块903。其中:
[0149]
启用模块901,用于当所述客户端请求接口失败时,启用h5容灾页面。
[0150]
具体地,客户端在展示页面数据时,需要先通过接口请求的方式来获取页面数据,当客户端接口请求失败时,表明客户端没有成功获取到页面数据,此时,客户端将会启用h5容灾页面。
[0151]
其中,所述h5是html5的简称。html5是html最新的修订版本,是一种超文本标记语言。h5有两大特点,首先,强化了web网页的表现性能,其次,追加了本地数据库等web应用的功能。h5容灾页面就是利用html5制作出来的容灾页面。
[0152]
需要说明的是,该h5容灾页面是一个备份的页面,其不是客户端请求接口正常时所显示的页面。
[0153]
在本实施例中,当客户端请求的接口包括主备两条线路时,所述客户端请求主线路和备用线路接口都失败时,才会启用h5容灾页面;当客户端请求的接口仅仅包括主线路时,则所述客户端请求该线路失败时,即会启用所述h5容灾页面。
[0154]
获取模块902,用于通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据。
[0155]
具体地,云存储服务器中预先存储有用于客户端展示容灾压面所需的容灾数据,以便在客户端请求接口失败时,可以通过所述h5容灾页面调用容灾接口来获取所述容灾数据。其中,所述容灾接口为上述实施例的容灾接口列表中的接口,所述容灾数据和上述实施例中的容灾数据相同,在本实施例中不再赘述。
[0156]
在一示例性的实施例中,所述获取模块902,还用于通过所述h5容灾页面向预设的服务器请求容灾接口开关配置文件;
[0157]
具体地,所述预设的服务器为用于对运行本容灾页面显示方法的设备进行管理的
设备,通过该服务器可以对客户端的容灾模式进行设定。本实施例中,为了应对不同的状况,可以为客户端配置多种容灾模式,比如,在一实施方式中,可以配置以下两种容灾模式:1)开启列表容灾页面。2)开启容灾接口。所述接口开关配置文件包含有对该两种容灾模式的配置情况。当容灾模式为开启容灾接口时,即配置该容灾模式的容灾开关处于开启状态,则在客户端请求接口失败时,将进入该容灾模式;当容灾模式为开启列表容灾页面时,即配置该容灾模式的列表容灾页面开关处于开启状态时,则在客户端请求接口失败时,将进入该容灾模式。
[0158]
所述获取模块902,还用于根据请求到的开关配置文件确定容灾开关是否处于开启状态;若所述容灾开关处于开启状态,则通过所述h5容灾页面调用容灾接口获取云存储服务器中存储的容灾数据。
[0159]
具体地,所述开关配置文件中包含有容灾开关的开启状态信息,根据该开启状态信息可以判定容灾开关是处于开启状态还是关闭状态,比如,若开启状态信息为“1”,则表明该容灾开关为开启状态,若开启状态信息为“0”,则表明该容灾开关为关闭状态。当该容灾开关为开启状态时,h5容灾页面就会调用容灾接口获取云存储服务器中存储的容灾数据。
[0160]
本实施例通过请求容灾接口开关配置文件来确定容灾模式,从而使得客户端展示的容灾页面更加灵活。
[0161]
渲染模块903,用于根据所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面。
[0162]
具体地,由于获取到的容灾数据包含有显示大部分正常页面的模块所对应的数据,因此,通过所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面,是一个包含有客户端正常所展示的页面的大部分页面模块。
[0163]
本实施例通过在客户端请求接口失败时,启用h5容灾页面实现客户端页面的展示,从而实现前端页面的高可用性。
[0164]
进一步地,在一示例性的实施方式中,所述获取模块902,还用于若所述容灾开关处于关闭状态,则向所述云存储服务器获取静态的容灾页面数据。
[0165]
所述渲染模块903,还用于对所述容灾页面数据进行页面渲染,得到静态容灾页面。
[0166]
具体地,云存储服务器中还存储有用于最终兜底的静态容灾页面对应的容灾页面数据,当判定出容灾开关处于关闭状态时,客户端将启用该页面容灾模式,即从云存储服务器中获取容灾页面数据,然后对容灾页面数据进行页面渲染,得到最终兜底的静态容灾页面。
[0167]
本实施例通过容灾开关处于关闭状态时,展示静态容灾页面,从而提高前端展示页面的高可用性。
[0168]
进一步地,在一示例性的实施方式中,所述获取模块902,还用于当根据所述h5容灾页面与所述容灾数据进行页面渲染失败时,向所述云存储服务器获取静态的容灾页面数据。
[0169]
所述渲染模块903,还用于对所述容灾页面数据进行页面渲染,得到静态容灾页面。
[0170]
具体地,为了避免客户端在根据所述h5容灾页面与所述容灾数据进行页面渲染时发生失败时,客户端将不能展示前端页面的缺陷,本实施例中在检测到渲染失败时,将向所述云存储服务器获取静态的容灾页面数据,然后对所述容灾页面数据进行页面渲染,得到静态容灾页面,从而进一步实现前端展示页面的高可用性。
[0171]
图11示意性示出了根据本申请实施例的适于实现页面数据备份方法或实现容灾页面显示方法的计算机设备10的硬件架构示意图。本实施例中,计算机设备10是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图11所示,计算机设备10至少包括但不限于:可通过系统总线相互通信链接存储器11、处理器12、网络接口13。其中:
[0172]
存储器11至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器11可以是计算机设备10的内部存储模块,例如该计算机设备10的硬盘或内存。在另一些实施例中,存储器11也可以是计算机设备10的外部存储设备,例如该计算机设备10上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,存储器11还可以既包括计算机设备10的内部存储模块也包括其外部存储设备。本实施例中,存储器11通常用于存储安装于计算机设备10的操作系统和各类应用软件,例如页面数据备份方法或容灾页面显示方法的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
[0173]
处理器12在一些实施例中可以是中央处理器(central processing unit,简称为cpu)、控制器、微控制器、微处理器、或其它数据处理芯片。该处理器12通常用于控制计算机设备10的总体操作,例如执行与计算机设备10进行数据交互或者通信相关的控制和处理等。本实施例中,处理器12用于运行存储器11中存储的程序代码或者处理数据。
[0174]
网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在计算机设备10与其它计算机设备之间建立通信链接。例如,网络接口13用于通过网络将计算机设备10与外部终端相连,在计算机设备10与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(global system of mobile communication,简称为gsm)、宽带码分多址(wideband code division multiple access,简称为wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi等无线或有线网络。
[0175]
需要指出的是,图11仅示出了具有部件11-13的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
[0176]
在本实施例中,存储于存储器11中的页面数据备份方法或容灾页面显示方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器12)所执行,以完成本申请。
[0177]
本申请实施例提供了一种页面数据显示系统,包括页面数据备份装置及容灾页面
显示装置,其中:
[0178]
所述页面数据备份装置包括:获取模块,用于定时获取容灾接口列表,并通过所述容灾接口列表中包含的至少一个接口从数据服务器中请求所述至少一个接口对应的容灾数据;上传模块,用于将所述容灾数据上传至云存储服务器中;
[0179]
所述容灾页面显示装置包括:启用模块,用于当客户端请求接口失败时,启用h5容灾页面;获取模块,用于通过所述h5容灾页面调用容灾接口获取所述云存储服务器中存储的容灾数据;渲染模块,用于根据所述h5容灾页面与所述容灾数据进行页面渲染,得到目标容灾页面。
[0180]
具有地,本申请中的页面数据备份装置及容灾页面显示装置在上述实施例中已详细描述,在本实施例中不再赘述。
[0181]
本申请实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的页面数据备份方法或容灾页面显示方法的步骤。
[0182]
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中的页面数据备份方法或容灾页面显示方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
[0183]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0184]
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。
[0185]
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术
方案的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1