一种第三方回调智能路由方法与流程
- 国知局
- 2024-12-06 12:09:11
本发明涉及互联网,特别涉及一种第三方回调智能路由方法。
背景技术:
1、近些年,互联网公司随着业务规模扩张范围扩大,用户体量增多,互联网系统能够稳定,高质量的提供服务尤为重要。
2、为了提供优质服务,系统通常会集成很多第三方能力服务商,如支付能力。
3、然而系统的后端服务通常会有多套环境,如测试环境、预发布环境、用户验收环境、灰度环境、生产环境等,那么就存在一个的问题:第三方处理完逻辑后通知内部系统应该通知到哪套环境?
4、并且为了提升系统的迭代能力,每套环境又分多套子环境,用于提供并行迭代的能力,如我们的it团队内有三个字团队,测试环境会分为测试一,测试二,测试三,第三方能力服务商通常只有一套环境,正常情况无法映射处理拥有多套环境的系统,所以第三方服务在发起回调请求后,只能到达其中一套子环境。
5、这时候就会导致部分环境无法接收和处理回调请求,如果是测试环境那么部分回调场景功能无法并行测试,影响迭代交付效率,如果是生产环境,那么回调请求无法进入灰度环境,无法实现功能的上线验收,只能把该功能发布到生产环境才能知道是否有问题,这样做无法保证交付功能的稳定性。
6、为了解决这些问题,当前主要的方法是通过向第三方购买多套服务,购买数量相当于内部系统的环境数量,该方法的主要缺点主要是运维成本较高,而且不够灵活,假设公司内部it团队新增了开发组,那么就涉及到需要到第三方开通新商户号。
技术实现思路
1、针对现有技术存在的问题,本发明提供一种第三方回调智能路由方法。
2、为了上述目的,本发明提供一种第三方回调智能路由方法,包括以下步骤:
3、步骤a:配置环境标识:为每个部署环境配置一个唯一的环境标识;
4、步骤b:生成业务唯一标识:业务唯一标识生成器基于雪花算法扩展环境标识位,并将环境标识嵌入其中,以实现对业务唯一标识的环境染色;
5、步骤c:发起请求:向第三方服务发起请求时,传递业务唯一标识;
6、步骤d:接收回调:接收第三方服务处理完毕后回传的业务唯一标识和结果;
7、步骤e:路由请求:根据业务唯一标识中的环境标识,动态路由回调请求至相应的内部系统环境。
8、优选地,所述步骤b中的业务唯一标识生成器在服务启动前配置环境标识,并将该环境标识加载到运行内存中,以实现对业务唯一标识的环境染色。
9、优选地,所述步骤e中路由请求进一步包括如下步骤:
10、步骤e1:路由引擎初始化:启动基于nginx和lua的路由引擎,加载配置信息以准备路由过程;
11、步骤e2:路由处理:路由引擎识别业务唯一标识,解析环境标识,并根据解析结果动态将请求路由至相应的内部系统环境;
12、步骤e3:路由引擎全局异常处理:当出现异常时,将请求路由至预设的默认环境,以确保系统的稳定性和安全性。
13、优选地,所述路由引擎的初始化步骤包括从数据库中加载路由规则和环境映射配置,确定请求应被路由至的具体环境。
14、优选地,所述路由引擎在解析环境标识时支持application/json、application/xml、
15、application/x-www-form-urlencoded的数据格式解析。
16、优选地,所述路由引擎支持从第三方服务的http请求中识别业务唯一标识,用于解析环境标识,其中http请求包括请求地址、请求头和请求体;该路由引擎利用请求地址、请求包头和请求包体,来匹配白名单配置和分流服务,确保请求被正确地处理和路由至适当的内部系统环境。
17、优选地,所述路由引擎初始化配置有openresty和lua虚拟机,用于加载分流策略;
18、所述路由引擎通过lua虚拟机在nginx中创建协程,以并发加载分流策略和读取请求信息。
19、优选地,所述路由引擎从redis和本地缓存中读取请求信息和分流配置,并包括一个定时任务,每10分钟刷新配置到缓存,以保持配置信息的实时性。
20、优选地,所述路由引擎还包括一个回调接口解析配置模块,用于处理和缓存回调接口的解析配置;
21、所述路由引擎还包括一个分流模块,用于根据环境标识和分流配置将请求路由到指定的upstream。
22、优选地,所述路由引擎解析请求中的环境标识特征,以确定请求应路由到的upstream。
23、采用本发明的技术方案,具有以下有益效果:
24、本发明通过在业务唯一标识中嵌入环境标识,使得路由引擎能够智能识别请求所属的环境,实现精准的路由,种方法提高了请求处理的准确性和效率。
25、本发明解决传统方案需要为每个内部环境购买额外的第三方服务实例,导致运维成本高昂的问题,本发明通过统一的路由引擎处理所有第三方回调,避免了重复购买服务,显著降低了成本。
26、本发明支持灵活配置的路由规则和分流策略,可以根据业务需求的变化快速调整,同时支持新增路由策略的无缝集成;路由引擎支持从数据库中动态加载路由规则和环境映射配置,使得系统能够实时响应配置变更,无需重启服务,提高了系统的响应速度和灵活性;路由引擎的全局异常处理机制确保了在出现异常时,请求能够被安全地路由到预设的默认环境,从而保障了系统的稳定性和可靠性。
27、本发明通过白名单配置和分流服务的匹配,增强了系统的安全性,只有符合预定义安全策略的请求才能被正确处理和路由,有效防止了未授权访问和恶意攻击。
28、本发明支持多环境并行工作,加快了系统的迭代速度,通过智能路由,测试环境能够并行测试不同的回调场景,提高了迭代交付的效率。
技术特征:1.一种第三方回调智能路由方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的第三方回调智能路由方法,其特征在于,所述步骤b中的业务唯一标识生成器在服务启动前配置环境标识,并将该环境标识加载到运行内存中,以实现对业务唯一标识的环境染色。
3.根据权利要求1所述的第三方回调智能路由方法,其特征在于,所述步骤e中路由请求进一步包括如下步骤:
4.根据权利要求3所述的第三方回调智能路由方法,其特征在于,所述路由引擎的初始化步骤包括从数据库中加载路由规则和环境映射配置,确定请求应被路由至的具体环境。
5.根据权利要求4所述的第三方回调智能路由方法,其特征在于,所述路由引擎在解析环境标识时支持application/json、application/xml、application/x-www-form-urlencoded的数据格式解析。
6.根据权利要求5所述的第三方回调智能路由方法,其特征在于,所述路由引擎支持从第三方服务的http请求中识别业务唯一标识,用于解析环境标识,其中http请求包括请求地址、请求头和请求体;该路由引擎利用请求地址、请求包头和请求包体,来匹配白名单配置和分流服务,确保请求被正确地处理和路由至适当的内部系统环境。
7.根据权利要求6所述的第三方回调智能路由方法,其特征在于,所述路由引擎初始化配置有openresty和lua虚拟机,用于加载分流策略;
8.根据权利要求7所述的第三方回调智能路由方法,其特征在于,所述路由引擎从redis和本地缓存中读取请求信息和分流配置,并包括一个定时任务,每10分钟刷新配置到缓存,以保持配置信息的实时性。
9.根据权利要求8所述的第三方回调智能路由方法,其特征在于,所述路由引擎还包括一个回调接口解析配置模块,用于处理和缓存回调接口的解析配置;
10.根据权利要求9所述的第三方回调智能路由方法,其特征在于,所述路由引擎解析请求中的环境标识特征,以确定请求应路由到的upstream。
技术总结本发明公开一种第三方回调智能路由方法,包括以下步骤:配置环境标识:为每个部署环境配置一个唯一的环境标识;生成业务唯一标识:业务唯一标识生成器基于雪花算法扩展环境标识位,并将环境标识嵌入其中,以实现对业务唯一标识的环境染色;发起请求:向第三方服务发起请求时,传递业务唯一标识;接收回调:接收第三方服务处理完毕后回传的业务唯一标识和结果;路由请求:根据业务唯一标识中的环境标识,动态路由回调请求至相应的内部系统环境。本发明通过在业务唯一标识中嵌入环境标识,使得路由引擎能够智能识别请求所属的环境,实现精准的路由,种方法提高了请求处理的准确性和效率。技术研发人员:王越,单新宁受保护的技术使用者:深圳市丰宜科技有限公司技术研发日:技术公布日:2024/12/2本文地址:https://www.jishuxx.com/zhuanli/20241204/339633.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表