一种网关链路性能和可用性提升方法技术

技术编号:36033270 阅读:15 留言:0更新日期:2022-12-21 10:35
本发明专利技术公开了一种网关链路性能和可用性提升方法,涉及网关服务相关领域,所述方法包括:启动API网关,从关系型数据库中读取数据并初始化,搭建网站服务器;基于所述网站服务器前端采集路由数据和服务数据,存储至所述关系型数据库中;根据所述服务数据,得到服务数据列表;连接注册中心对所述服务数据列表进行数据一致性交互,输出服务实例列表;将用户的实时请求发送至所述API网关,得到目标服务实例的地址进行实例响应,获取实例响应结果,并对所述实例响应结果进行异常判断和响应的方式,解决了现阶段缓存数据量大,造成资源紧张,请求批量失败的技术问题,达到对相关服务拆分管理,缓解资源紧张以及增加平台的稳定性的效果。果。果。

【技术实现步骤摘要】
一种网关链路性能和可用性提升方法


[0001]本专利技术涉及网关服务相关领域,尤其涉及一种网关链路性能和可用性提升方法。

技术介绍

[0002]服务注册与服务发现是微服务体系结构中的核心能力,提供这些功能的注册中心组件也已经是微服务架构中不可或缺的核心组件。注册中心降低了服务之间的耦合,同时支持高可用以及服务数据管理等能力。
[0003]现有主流的技术方案为了避免延长请求链路增加的时延与故障概率,会在每个应用内集成的注册中心客户端都缓存一份注册中心服务端全量的服务实例数据,业务请求时直接从内存中获取服务实例数据,进行负载均衡后选取目标实例进行请求转发。
[0004]现阶段存在因为缓存大部分不相关服务数据引发的资源紧张与频繁GC,以及因为物理时延问题带来的请求批量失败的技术问题。

技术实现思路

[0005]针对现有技术中的缺陷,本申请通过提供一种网关链路性能和可用性提升方法,解决了现阶段存在因为缓存大部分不相关服务数据引发的资源紧张与频繁GC,以及因为物理时延问题带来的请求批量失败的技术问题,达到了通过对网关服务数据进行拆分管理,节省网关大量资源消耗,缓解资源紧张以及增加平台的稳定性的技术效果。
[0006]一方面,本申请提供一种网关链路性能和可用性提升方法,所述方法包括:启动API网关,从关系型数据库中读取数据并初始化,搭建网站服务器;基于所述网站服务器前端采集路由数据和服务数据,将所述路由数据和所述服务数据存储至所述关系型数据库中;当所述关系型数据库根据接收到的所述服务数据,根据所述服务数据得到服务数据列表;连接注册中心对所述服务数据列表进行数据一致性交互,输出服务实例列表,其中,所述服务实例列表存储于内存中;获取网站用户的实时请求,将所述实时请求发送至所述API网关,通过所述路由数据连接服务,得到目标服务实例的地址;将所述目标服务实例的地址转发至后端服务实例,查询所述服务实例列表进行连接,获取实例响应结果;将所述实例响应结果发送至所述API网关进行异常检验,当检验结果为连接正常,将所述实例响应结果发送至所述网站用户。
[0007]另一方面,本申请还提供了一种网关链路性能和可用性提升方法的系统,所述系统包括:网关启动模块,用于启动API网关,从关系型数据库中读取数据并初始化,搭建网站服务器;数据读取模块,用于基于所述网站服务器前端采集路由数据和服务数据,将所述路由数据和所述服务数据存储至所述关系型数据库中;列表生成模块,用于当所述关系型数据库根据接收到的所述服务数据,根据所述服务数据得到服务数据列表;数据交互模块,用于连接注册中心对所述服务数据列表进行数据一致性交互,输出服务实例列表,其中,所述服务实例列表存储于内存中;实例请求模块,用于获取网站用户的实时请求,将所述实时请求发送至所述API网关,通过所述路由数据连接服务,得到目标服务实例的地址;实例连接
响应模块,用于将所述目标服务实例的地址转发至后端服务实例,查询所述服务实例列表进行连接,获取实例响应结果;实例异常检验模块,用于将所述实例响应结果发送至所述API网关进行异常检验,当检验结果为连接正常,将所述实例响应结果发送至所述网站用户。
[0008]第三方面,本专利技术还提供了一种大文件批处理和监控的系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述第一方面所述方法的步骤。
[0009]第四方面,一种电子设备,其中,包括处理器和存储器;
[0010]该存储器,用于存储;
[0011]该处理器,用于通过调用,执行上述第一方面中任一项所述的方法。
[0012]第五方面,一种计算机程序产品,包括计算机程序和/或指令,该计算机程序和/或指令被处理器执行时实现上述第一方面中任一项所述方法的步骤。
[0013]拟通过本申请提出的一种网关链路性能和可用性提升方法,所产生的技术效果如下:
[0014]由于采用了通过启动API网关,并从关系型数据库中读取数据并实现初始化,以搭建好的网站服务器前端进行路由数据和服务数据的采集,并将所述路由数据和所述服务数据存储至该关系型数据库中,还可以通过刷写存储内存,实现之后的数据调用,进一步的,当服务数据后,存储服务数据列表,通过此列表维持与注册中心的数据一致性交互,将服务实例列表存储到内存中,用户发起请求到达API网关后,根据路由找到服务,再从内存中找到服务实例地址进行转发,将请求转发到后端服务实例上,后端服务实例之间经过处理后将响应返回给API网关,API网关判断响应是否正常,若为连接异常需要走异常兜底策略处理,API网关将响应返回给用户,完成本次请求。达到了通过对网关服务数据进行拆分管理,节省网关大量资源消耗,缓解资源紧张以及增加平台的稳定性的技术效果。
[0015]上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
[0016]通过阅读参照以下附图对非限制性实施例所做的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:
[0017]图1为本申请实施例一种网关链路性能和可用性提升方法的流程示意图;
[0018]图2为本申请实施例一种网关链路性能和可用性提升方法的实例异常检验的流程示意图;
[0019]图3为本申请实施例一种网关链路性能和可用性提升方法的服务拆分管理的流程示意图;
[0020]图4为本申请实施例一种网关链路性能和可用性提升方法的系统的结构示意图;
[0021]图5为本申请实施例中一种电子设备的结构示意图。
[0022]附图标记说明:网关启动模块11,数据读取模块12,列表生成模块13,数据交互模块14,实例请求模块15,实例连接响应模块16,实例异常检验模块17,总线300,接收器301,
处理器302,发送器303,存储器304,总线接口305。
[0023]后续将结合附图详细的描述本申请的示例实施例。显然,所描述的实施例仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
具体实施方式
[0024]实施例一
[0025]如图1所示,本申请实施例提供了一种网关链路性能和可用性提升方法,所述方法包括:
[0026]步骤S100:启动API网关,从关系型数据库中读取数据并初始化,搭建网站服务器;
[0027]目前,当注册到服务端的实例数据过多且实例携带的元数据信息冗杂时,对应地客户端需要缓存相当一部分不相关的服务实例在本地,这部分数据在每次刷新时都需要更新但在处理业务请求转发时却根本用不到,属于极大的资源浪费。并且如果这部分内存占用过大时也会导致频繁的GC等问题引发更多不可预知的内部异常,引发资源紧张的问题,因此,拟提出一种网关链路性能和可用性提升方法,用于通过减少缓存的服本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种网关链路性能和可用性提升方法,其特征在于,所述方法包括:启动API网关,从关系型数据库中读取数据并初始化,搭建网站服务器;基于所述网站服务器前端采集路由数据和服务数据,将所述路由数据和所述服务数据存储至所述关系型数据库中;当所述关系型数据库根据接收到的所述服务数据,根据所述服务数据得到服务数据列表;连接注册中心对所述服务数据列表进行数据一致性交互,输出服务实例列表,其中,所述服务实例列表存储于内存中;获取网站用户的实时请求,将所述实时请求发送至所述API网关,通过所述路由数据连接服务,得到目标服务实例的地址;将所述目标服务实例的地址转发至后端服务实例,查询所述服务实例列表进行连接,获取实例响应结果;将所述实例响应结果发送至所述API网关进行异常检验,当检验结果为连接正常,将所述实例响应结果发送至所述网站用户。2.如权利要求1所述的方法,其特征在于,所述方法还包括:将所述实例响应结果发送至所述API网关,其中,所述API网关包括实例异常检验模块;根据所述实例异常检验模块,判断所述实例响应结果是否为连接异常,获取异常检验结果,其中,所述异常检验结果包括连接正常和连接异常;若所述异常检验结果为连接异常,对所述目标服务实例进行处理。3.如权利要求2所述的方法,其特征在于,若所述异常检验结果为连接异常,对所述目标服务实例进行处理,所述方法还包括:若所述异常检验结果为连接异常,获取实例标识指令;根据所述实例标识指令对所述目标服务实例进行异常标识,标识成功后,获取实例剔除指令;将所述实例剔除指令发送至所述内存的处理器,对所述目标服务实例进行剔除处理。4.如权利要求2所述的方法,其特征在于,所述实例异常检验模块包括异常检验条件,所述方法还包括:根据所述异常检验条件分析所述实例响应结果,若所述实例响应结果为连接失败,获取刷新指令;根据所述刷新指令,得到二次实例响应结果,若所述二次实例响应结果为连接失败,获取二次刷新指令;根据所述二次刷新指令,得到三次实例响应结果,若所述三次实例响应结果为连接失败,输出连接异常的检验结果。5.如权利要求1所述的方法,其特征在于,所述方法还包括:获取API网关与所述注册中心的交互流程;分...

【专利技术属性】
技术研发人员:张正园
申请(专利权)人:建信金融科技有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1