本技术涉及计算机,尤其涉及一种主备类服务路由实现方法、装置、电子设备及计算机可读存储介质。
背景技术:
1、在互联网领域,系统平台通常可划分为服务消费者层、服务提供者层以及数据库层的三层架构。服务消费者层向服务提供者层下发业务请求,以调用服务提供者层提供的业务服务。在分布式架构中,系统平台会同时部署在多个数据中心,不同数据中心所部署的地理位置可能相同或不同,各数据中心部署有支撑业务运行的服务器(例如单个服务器或者服务器集群),且各数据中心各自独立运行。
2、在实际应用中,系统平台配置某个数据中心为主服务中心,其他数据中心为备用服务中心。当备用服务中心接收到业务请求后,会将该业务请求转发至主服务中心,由主服务中心统一处理业务请求。
3、系统平台的路由功能是指各服务中心将业务请求交由主服务中心处理。现有技术中运行于服务提供者层的各个应用在实现自身功能的基础上,需要各自开发请求接收接口,该开发请求接收接口用于接收业务请求并实现路由功能,造成开发成本高,不同应用之间的路由逻辑重复。
4、另外,现有技术中当涉及主服务中心的切换时,各个应用均需要分别重新配置主服务中心进行切换,造成运维成本高。
技术实现思路
1、鉴于上述问题,提出了本技术以便提供一种克服上述问题或者至少部分地解决上述问题的主备类服务路由实现方法、装置、电子设备及计算机可读存储介质。
2、本技术实施例采用下述技术方案:
3、第一方面,本技术实施例提供一种主备类服务路由实现方法,应用于服务器,所述服务器的路由层设置有请求接收接口,包括:
4、接收用户对各个应用的路由配置信息和主服务中心配置信息,各个应用的路由配置信息包括请求接收接口与各个应用的业务处理接口的对应关系,各个应用的主服务中心配置信息包括各个应用的主服务中心对应的服务器编号;
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、可选地,还包括:
32、主数据库配置信息接收单元,用于接收用户对主数据库的配置信息,所述主数据库的配置信息包括主数据库的标识号,以使所述主服务中心对应的服务器根据所述主数据库的配置信息对所述业务请求进行处理。
33、可选地,还包括:
34、主数据库探测单元,用于执行主数据库探测任务,更新所述主服务中心与所述主数据库的对应关系。
35、可选地,所述执行主数据库探测任务包括:
36、判断是否能向所述主数据库写入测试数据;
37、若不能向所述数据库写入测试数据,则确定所述主数据库已迁移,并向其它数据库写入所述测试数据;
38、若能够向其它数据库的第一数据库写入测试数据,则确定所述第一数据库为主数据库。
39、可选地,还包括:
40、监测单元,用于监测各个应用的接口调用过程,生成各个应用的接口调用记录。
41、可选地,还包括:
42、计算单元,用于根据所述各个应用的接口调用记录计算各个应用的接口调用耗时和调用成功率。
43、第三方面,本技术实施例还提供一种电子设备,包括:
44、处理器;以及
45、被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行上述的主备类服务路由实现方法。
46、第四方面,本技术实施例还提供计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行上述的主备类服务路由实现方法。
47、本技术实施例采用的上述至少一个技术方案能够达到以下有益效果:
48、本技术实施例通过在服务器的路由层设置适配于各个应用的请求接收接口,在接收到客户端的业务请求后,根据预先设置的各个应用的路由配置信息和主服务中心配置信息,将业务请求发送至主服务中心对应的服务器的目标业务处理接口。由此,各个应用不需要各自开发请求接收接口,降低了开发成本,为了将各个应用的业务请求交由主服务中心处理,各个应用可通过服务器的路由层设置的请求接收接口统一实现,避免了不同应用之间的路由逻辑重复。