CN112636992B - 一种动态路由方法、装置、设备及存储介质 - Google Patents
一种动态路由方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112636992B CN112636992B CN202110261165.4A CN202110261165A CN112636992B CN 112636992 B CN112636992 B CN 112636992B CN 202110261165 A CN202110261165 A CN 202110261165A CN 112636992 B CN112636992 B CN 112636992B
- Authority
- CN
- China
- Prior art keywords
- configuration information
- component
- routing configuration
- routing
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0889—Techniques to speed-up the configuration process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开一种动态路由方法、装置、设备及存储介质,在路由配置信息中设置文本数据序列化格式的扩展字段,由于文本数据序列化格式扩展性较好,当出现新增路由配置时,将新增路由配置按照文本数据序列化格式写入目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息。接口组件向管理组件下发更新后的目标路由配置信息,管理组件将更新后的目标路由配置信息透传至代理组件,再由代理组件透传至网关组件,以便网关组件从更新后的路由配置信息的扩展字段中解析新增路由配置,以用于转发业务请求。该方法提高了路由配置信息的可扩展性,简化了升级流程,提升了开发效率;支持零停机升级,极大减少了停服时间和故障频次,提升了网关的稳定性。
Description
技术领域
本申请涉及网络技术领域,特别是涉及一种动态路由方法、装置、设备及存储介质。
背景技术
应用程序接口(Application Programming Interface,API)网关是一个服务器,为每个客户端提供一个定制的API。所有的客户端都通过统一的网关接入服务,即所有的外部请求都统一发到网关,网关再根据对应的路由配置转发到相应服务。
动态路由是指当路由配置发生改变后,而不用重启网关服务。目前,传统动态路由方法主要是通过网络消息下发路由配置实现动态路由。
但是,传统方式中所使用的网络消息扩展性较差,且在实现动态路由过程中,API网关包括的所有组件都需要升级,升级流程繁琐,升级周期长;不支持零停机升级,导致每次升级都会造成一定时间的管控面业务中断,影响可用性,进而带来更高的故障风险,影响系统稳定性。
发明内容
为了解决上述技术问题,本申请提供了一种动态路由方法、装置、设备及存储介质,通过在路由配置信息中设置文本数据序列化格式的扩展字段,提高了可扩展性;另外,只需要对接口组件和网关组件进行升级,无需对管理组件和代理组件,简化了升级流程,缩短升级周期,提升了开发效率。且由于接口组件和网关组件支持零停机升级,极大减少了停服时间和故障频次,提升了网关的稳定性。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供一种动态路由方法,所述方法由接口组件执行,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述方法包括:
获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;
向管理组件下发所述更新后的目标路由配置信息,以便所述管理组件将所述更新后的目标路由配置信息透传至代理组件,再由所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
第二方面,本申请实施例提供一种动态路由方法,所述方法由管理组件执行,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述方法包括:
接收接口组件下发的更新后的目标路由配置信息,所述更新后的目标路由配置信息是所述接口组件将获取到的新增路由配置按照所述文本数据序列化格式写入对应的目标路由配置信息的扩展字段中得到的,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
向代理组件透传所述更新后的目标路由配置信息,以便所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
第三方面,本申请实施例提供一种动态路由装置,所述装置部署在接口组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述装置包括获取单元、写入单元和发送单元:
所述获取单元,用于获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
所述写入单元,用于将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;
所述发送单元,用于向管理组件下发所述更新后的目标路由配置信息,以便所述管理组件将所述更新后的目标路由配置信息透传至代理组件,再由所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
第四方面,本申请实施例提供一种动态路由装置,所述装置部署在管理组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述装置包括接收单元和发送单元:
所述接收单元,用于接收接口组件下发的更新后的目标路由配置信息,所述更新后的目标路由配置信息是所述接口组件将获取到的新增路由配置按照所述文本数据序列化格式写入对应的目标路由配置信息的扩展字段中得到的,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
所述发送单元,用于向代理组件透传所述更新后的目标路由配置信息,以便所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
第五方面,本申请实施例提供一种动态路由系统,所述系统包括接口组件、管理组件、代理组件和网关组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示:
所述接口组件,用于获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;向所述管理组件下发所述更新后的目标路由配置信息;
所述管理组件,用于向所述代理组件透传所述更新后的路由配置信息;
所述代理组件,用于向所述网关组件透传所述更新后的路由配置信息;
所述网关组件,用于从所述更新后的路由配置信息的扩展字段中解析所述新增路由配置,以用于转发业务请求。
第六方面,本申请实施例提供一种用于动态路由的设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行第一方面或第二方面所述的方法。
第七方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面或第二方面所述的方法。
由上述技术方案可以看出,在路由配置信息中设置文本数据序列化格式的扩展字段,通过新增路由配置表示对目标路由配置信息的修改情况,由于文本数据序列化格式扩展性较好,这样,当出现新增路由配置时,即修改某个路由配置信息例如目标路由配置信息时,可以将新增路由配置按照文本数据序列化格式写入目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息,无需对整个路由配置信息进行重新编译,从而提高可扩展性。在得到更新后的目标路由配置信息后,接口组件向管理组件下发更新后的目标路由配置信息,管理组件将更新后的目标路由配置信息透传至代理组件,再由代理组件将更新后的目标路由配置信息透传至网关组件,以便网关组件从更新后的路由配置信息的扩展字段中解析新增路由配置,以用于转发业务请求。由于该过程中扩展字段对于管理组件和代理组件来说是透明的,并不需要感知扩展字段的具体含义,因此只需要对接口组件和网关组件进行升级,无需对管理组件和代理组件,简化了升级流程,缩短升级周期,提升了开发效率;另外,由于接口组件和网关组件支持零停机升级,极大减少了停服时间和故障频次,提升了网关的稳定性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术成员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为相关技术提供的一种动态路由方法的系统架构示意图;
图2为本申请实施例提供的一种动态路由方法的应用场景示意图;
图3为本申请实施例提供的一种动态路由方法的信令交互图;
图4为本申请实施例提供的API网关产品的服务详情页面示例图;
图5为本申请实施例提供的一种API 网关动态路由方法的系统架构示例图;
图6为本申请实施例提供的一种路由配置信息中新增扩展字段的示例图;
图7为本申请实施例提供的一种扩展字段再分类的示例图;
图8为本申请实施例提供的一种扩展字段透传过程的流程示例图;
图9为本申请实施例提供的一种管理组件执行的对账流程的信令交互图;
图10为本申请实施例提供的一种动态路由方法的流程图;
图11为本申请实施例提供的一种动态路由装置的结构图;
图12为本申请实施例提供的又一种动态路由装置的结构图;
图13为本申请实施例提供的一种终端设备的结构图;
图14为本申请实施例提供的一种服务器的结构图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
为了实现API网关动态路由,相关技术提供了图1所示的系统架构。在该系统架构中包括接口组件101、管理组件102、代理组件103和网关组件104,通过网络消息将路由配置信息依次从接口组件101、管理组件102、代理组件103下发至网关组件104,其中,路由配置信息采用二进制序列化协议(protobuf)进行下发。当新功能发布时,需要重新编译protobuf文件,可扩展性较差。另外,还需要对该系统架构中包括的所有组件进行升级以支持重新编译的protobuf文件,升级流程繁琐,升级周期长;不支持零停机升级,导致每次升级都会造成一定时间的管控面业务中断,影响可用性,进而带来更高的故障风险,影响系统稳定性。
为了解决上述技术问题,本申请实施例提供一种动态路由方法,该方法基于原有二进制序列化协议,提取出常用扩展字段,使用性能稍差但可扩展性好的文本数据序列化格式扩展频繁变动的字段,即在路由配置信息中设置文本数据序列化格式的扩展字段,通过新增路由配置表示对目标路由配置信息的修改情况,由于文本数据序列化格式扩展性较好,这样,当出现新增路由配置时,只需要将新增路由配置写入目标路由配置信息的扩展字段中,无需对整个路由配置信息进行重新编译,从而提高可扩展性。并且只需要对接口组件和网关组件进行升级,无需对管理组件和代理组件,简化了升级流程,缩短升级周期,提升了开发效率;另外,由于接口组件和网关组件支持零停机升级,极大减少了停服时间和故障频次,提升了网关的稳定性。
本申请实施例提供的方法可以应用到API网关的API生命周期管理功能中服务发布、负载均衡等场景中,以在服务发布时实现动态路由。本申请实施例提供的动态路由方法可以集成在API网关产品上。
在API网关领域,动态路由是指修改上游(Upstream)地址、安全套接字协议(Secure Sockets Layer,SSL) 证书、限流限速阈值,而不用重启网关服务。
需要说明的是,本申请实施例提供的方法可以涉及云技术,具体涉及其中的网络技术领域;本申请实施例提供的方法还可以涉及区块链,其中路由配置信息可保存于区块链上。
参见图2,图2为本申请实施例提供的动态路由方法的应用场景示意图。该应用场景中包括接口组件201、管理组件202、代理组件203和网关组件204。其中,接口组件201、管理组件202、代理组件203和网关组件204构成本申请中可以实现动态路由的API网关,介于客户端205和服务器206之间。客户端205可以安装在终端上,服务器206用于为客户端205提供各种服务。服务器206可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器206可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
接口组件201是 API 网关的路由的对外接口(例如可以连接客户端205),提供API 生命周期管理、插件管理等功能。管理组件(Master组件)202是自研组件,用于网关组件204集群的管理、路由配置信息的下发/转发、以及保障集群路由一致性;代理组件(Agent组件)的职责是转发路由配置信息、下发增量路由配置信息、上报监控数据、调试路由配置等,该Agent 组件在每个转发节点部署一个,与网关组件204一一对应,即每个网关组件204与一个Agent 组件连接;网关组件204的主要职责是接入网关,转发数据面请求,从而将客户端205发送的数据面请求例如业务请求转发到服务器206进行处理。其中,常用的网关组件204可以包括多种,例如可以是Nginx组件。
通常情况下,网关组件204需要根据路由配置信息将数据面请求转发到服务器206,而路由配置信息可以能会由于新功能发布等原因而发生修改。为了实现动态路由,即保证在路由配置信息发生修改时能够无需重启网关组件204,本申请实施例在路由配置信息中新增扩展字段,该扩展字段采用文本数据序列化格式表示,该扩展字段用于写入表示对某个路由配置信息的修改情况的新增路由配置。
基于此,当新发布功能时,可以通过接口组件201获取新增路由配置以及对应的目标路由配置信息,将新增路由配置按照文本数据序列化格式写入目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息。由于所有的修改情况通过扩展字段中写入的新增路由配置表示,无需对整个路由配置信息进行重新编译,从而提高可扩展性。
然后,接口组件201向管理组件202下发更新后的目标路由配置信息,管理组件202向代理组件203透传更新后的路由配置信息,再由代理组件203向网关组件204透传更新后的路由配置信息,以便网关组件204从更新后的路由配置信息的扩展字段中解析新增路由配置,以用于转发业务请求。
接下来,将结合附图对本申请实施例提供的动态路由方法进行详细介绍。
参见图3,图3示出了一种动态路由方法的信令交互图, 所述方法包括:
S301、接口组件获取新增路由配置以及对应的目标路由配置信息。
其中,新增路由配置表示对目标路由配置信息的修改情况,修改情况包括在原路由配置信息的基础上进行增加、删除和修改。
目标路由配置信息是与新增路由配置对应的路由配置信息,即新增路由配置是对哪个路由配置信息的修改,那么,目标路由配置信息为哪个路由配置信息。对于其他未修改的路由配置信息,则无需获取,从而在后续路由下发过程中实现增量路由下发。
例如,每个路由配置信息具有对应的用户标识,其中用户标识可以用户ID(identity)表示,因此,目标路由配置信息是与新增路由配置的用户ID相同的路由配置信息。
需要说明的是,当需要对某个路由配置信息例如目标路由配置信息进行修改时,用户可以触发执行S301,进而实现本申请实施例提供的动态路由方法,该动态路由方法可以集成在API网关产品上,API网关产品具有对应的客户端。基于此,触发执行S301的方式可以是通过API网关产品对应的客户端触发。客户端上展示的API网关产品的服务详情页面可以参见图4所示,用户可以通过该页面的发布等功能,将编辑好的新增路由配置发布到测试、预发布或者生产环境中,从而触发执行该动态路由方法。例如在图4所示界面中,用户选择“基础配置”,进而利用编辑好的新增路由配置对目标路由配置信息进行修改,其中,“基本信息”中包括目标路由配置信息所属服务的服务名“test”、所属地域“南京”等信息,当用户完成图4所示界面上所有信息的填写后,点击“提交”按钮触发执行S301。
S302、接口组件将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息。
如图5所示,图5是本申请实施例提供的API 网关动态路由方法的系统架构示例图,包括接口组件201、管理组件202、代理组件203和网关组件204,每个组件可以作为系统架构中的一个节点,具体参见图2所对应的实施例中关于各个组件的介绍。该系统架构与传统动态路由方法提供的系统架构类似,但是传统动态路由方法中路由配置信息采用二进制序列化协议(protobuf)进行下发,当某个路由配置信息发生改变时,需要重新编译protobuf文件,可扩展性较差。为了让该系统架构在兼具高性能的同时,拥有更好的可扩展性,本申请实施例在路由配置信息中设置文本数据序列化格式的扩展字段,由于文本数据序列化格式扩展性较好,这样,当出现新增路由配置时,即修改某个路由配置信息例如目标路由配置信息时,可以将新增路由配置按照文本数据序列化格式写入目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息,无需对整个路由配置信息进行重新编译,从而提高可扩展性。
需要说明的是,本申请实施例使用的文本数据序列化格式可能包括很多中,例如JSON文本数据序列化格式、YAML文本数据序列化格式等。本申请实施例主要以JSON文本数据序列化格式为例进行介绍。
在路由配置信息中设置扩展字段即改变原有路由配置信息的路由配置结构,以扩展字段是JSON文本数据序列化格式为例,本申请实施例提供的路由配置表可以参见表1所示,该路由配置表所表示的路由配置信息包括新增的扩展字段,其对应的配置类型是字符串,它的值是JSON,后续若需要写入新增路由配置,则会变为扩展字段中的一个JSON值。另一方面,用户信息以及未被改动的路由配置信息是原有ProtoBuf值,没有变动。
表1 路由配置表
需要说明的是,在API 网关产品中有三个重要概念:
API,或者说是路由 。
服务,或者可以理解为一组API的集合。
使用计划,可以理解为调用者或者应用。
由于API、服务和使用计划在API网关中均是独立的路由配置,在版本持续迭代中,都可能会扩展一些新增路由配置,故本实施例需要在API对象、服务对象、使用计划对象的路由配置信息中均新增该扩展字段,参见图6所示。在图6中,服务对象的路由配置信息包括服务器信息1、服务器信息2、服务器信息3,为了提高可扩展性,在此基础上新增扩展字段;同理,API对象的路由配置信息包括API信息1、API信息2,为了提高可扩展性,在此基础上新增扩展字段;使用计划对象的路由配置信息包括使用计划信息1,为了提高可扩展性,在此基础上新增扩展字段。
通过在原有路由配置信息的基础上增加扩展字段,从而将高性能的二进制序列化协议和可扩展性好的文本数据序列化格式有机结合,在保证了高性能的前提下又具有较好的可扩展性。
由于后续所有新增路由配置均放在扩展字段中,为了避免所有新增路由配置混在一起,难以维护,在本申请实施例中可以在路由配置信息中按照配置类型设置不同对象的扩展字段,即对扩展字段中的路由配置进行再分类,根据业务类型的不同或者功能的不同确定配置类型,从而将不同的路由配置拆分到不同的对象下。如图7所示,针对API对象的路由配置信息中的扩展字段,可以根据业务类型的不同或者功能的不同确定对应的配置类型,不同的配置类型划分到不同的对象下,例如针对API对象的路由配置信息可以进一步划分为图7所示的三种对象,分别是后端路由配置、插件配置1、插件配置2。进一步拆分的每种对象下分别包括其对应配置类型的扩展字段,例如后端路由配置、插件配置1、插件配置2下的扩展字段分别包括扩展字段1和扩展字段2。
在这种情况下,在写入新增路由配置时,也要将新增路由配置写入对应其配置类型的对象的扩展字段中,即S302的一种可能实现方式可以是确定新增路由配置对应的目标配置类型,将新增路由配置按照文本数据序列格式写入目标配置类型对应的目标对象的扩展字段中。从而实现对扩展字段中的路由配置的分类维护,降低维护的难度。
由于文本数据序列化格式( 例如JSON文本数据序列化格式)的性能明显弱于二进制序列化协议的性能,若使用不当会明显影响后续更新后的目标路由配置信息下发流程中配置解析的性能。因此,在本申请实施例中可以新增一些规范以控制扩展字段的长度,使得扩展字段的字段长度小于预设阈值。
需要说明的是,本申请实施例可以采用多种方式控制扩展字段的字段长度小于预设阈值。在一些可能的实现方式中,可以通过对新增路由字段进行评审的方式控制扩展字段长度,基于此S302的实现方式可以是对新增路由配置进行评审,得到评审结果;若该评审结果表示已绑定所述目标对象,则将新增路由配置按照文本数据序列格式写入目标配置类型对应的目标对象的扩展字段中。若评审结果表示未绑定目标对象,则不在扩展字段中插入新增路由配置。通过这样的方式控制扩展字段中的字段长度在合理可接受的范围,进而保证后续配置解析性能。
S303、接口组件向管理组件下发所述更新后的目标路由配置信息。
S304、所述管理组件将所述更新后的目标路由配置信息透传至代理组件。
S305、所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
在得到更新后的目标路由配置信息后,接口组件需要将更新后的目标路由配置信息下发到网关组件,以便网关组件可以从更新后的路由配置信息的扩展字段中解析新增路由配置,以用于转发业务请求,实现动态路由。
需要说明的是,在本申请实施例中,接口组件将更新后的目标路由配置信息下发到网关组件的过程实现的是扩展字段透传过程,参见图8所示,即接口组件201可以将更新后的目标路由配置信息下发至管理组件202,然后由管理组件202将更新后的目标路由配置信息透传至代理组件203,再由代理组件203将更新后的目标路由配置信息透传至网关组件204。
管理组件的职责是集群管理、配置下发、保证集群配置一致性,代理组件的职责是路由配置信息的转发,故扩展字段对于管理组件和代理组件是透明的,管理组件和代理组件并不需要感知扩展字段的具体含义,扩展字段中写入新增路由配置时,管理组件和代理组件并不需要新增代码解析扩展字段中的含义。而接口组件需要理解新增路由配置并将该新增路由配置写入扩展字段中,接口组件需要理解新增路由配置,根据约定格式从扩展字段中解析出新增路由配置,用于数据面请求转发。
因此,本申请实施例中在新增路由配置时,在扩展字段中写入新增路由配置,且只需要改动接口组件和网关组件即可,无需改动管理组件和代理组件,相较于传统方案,从改动四个组件变为改动两个组件,改动组件更少,简化了升级流程,缩短升级周期,使得研发更加高效。另外,由于接口组件和网关组件支持零停机升级,极大减少了停服时间和故障频次,提升了网关的稳定性。
管理组件作为一个核心节点,可以采用主备方案实现高可用,另外,该管理组件也可以基于Paxos或者Raft等分布式协议实现分布式集群化高可用(即将二进制序列化协议替换为Paxos或者Raft等分布式协议),进一步提升组件的可用性。
由上述技术方案可以看出,在路由配置信息中设置文本数据序列化格式的扩展字段,通过新增路由配置表示对目标路由配置信息的修改情况,由于文本数据序列化格式扩展性较好,这样,当出现新增路由配置时,即修改某个路由配置信息例如目标路由配置信息时,可以将新增路由配置按照文本数据序列化格式写入目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息,无需对整个路由配置信息进行重新编译,从而提高可扩展性。在得到更新后的目标路由配置信息后,接口组件向管理组件下发更新后的目标路由配置信息,管理组件将更新后的目标路由配置信息透传至代理组件,再由代理组件将更新后的目标路由配置信息透传至网关组件,以便网关组件从更新后的路由配置信息的扩展字段中解析新增路由配置,以用于转发业务请求。由于该过程中扩展字段对于管理组件和代理组件来说是透明的,并不需要感知扩展字段的具体含义,因此只需要对接口组件和网关组件进行升级,无需对管理组件和代理组件,简化了升级流程,缩短升级周期,提升了开发效率;另外,由于接口组件和网关组件支持零停机升级,极大减少了停服时间和故障频次,提升了网关的稳定性。
可以理解的是,API 网关动态路由方法的系统架构中还可以包括数据库(DataBase,DB)207,参见图5中虚线框所示。数据库207例如可以是mysql数据库,mysql数据库是一种关系型数据库管理系统数据库,可以将数据保存在不同的表中,例如表1所示,将路由配置信息通过路由配置表来表示。
基于此,S301中的目标路由配置信息可以是接口组件从数据库207中获取的。
由于管理组件的职责是集群管理、配置下发、保证集群配置一致性,而在实现动态路由的过程中,可能由于节点重启、网络故障等问题导致不同节点之间的路由配置信息不一致,主要包括管理组件与数据库中的路由配置信息不一致,管理组件与代理组件中的路由配置信息不一致。
因此,在本申请实施例中可以通过管理组件执行对账功能,以保证不同节点之间路由配置信息的一致性。由于管理组件中的路由配置信息是接口组件从数据库中获取的,因此,管理组件执行的对账功能可以包括管理组件与数据库之间的路由配置信息对账,以及管理组件与代理组件之间的路由配置信息对账。下面分别对管理组件与数据库之间的路由配置信息对账,以及管理组件与代理组件之间的路由配置信息对账进行介绍。
管理组件执行的对账流程可以参见图9所示,其中,管理组件与数据库之间的路由配置信息对账的信令交互图可以参见图9中S901- S905所示,所述方法还包括:
S901、管理组件向接口组件发送第一路由配置请求。
其中,第一路由配置请求中可以包括管理组件的标识,以便根据该标识获取该管理组件上的全部路由配置信息。第一路由配置请求可以是管理组件定期发送的,或者周期性发送的,本实施例对此不做限定。
S902、接口组件根据第一路由配置请求从数据库中获取路由配置信息。
其中,S902的实现方式可以是接口组件向数据库发送访问请求(参见图9中S9021),该访问请求中可以包括管理组件的标识,数据库根据该管理组件的标识可以确定管理组件上的路由配置信息,从而向接口组件返回路由配置信息(参见图9中S9022)。
S903、接口组件将从数据库中获取的路由配置信息返回至管理组件。
S904、管理组件将接口组件从数据库中获取的路由配置信息与管理组件中存储的路由配置信息进行比对。
S905、若不一致,利用所述接口组件从数据库中获取的路由配置信息纠正所述管理组件中的路由配置信息。
其中,利用所述接口组件从数据库中获取的路由配置信息纠正所述管理组件中的路由配置信息的一种可能实现方式可以是利用接口组件从数据库中获取的路由配置信息纠正所述管理组件中不一致的数据。
在管理组件与数据库路由配置信息对账流程中,管理组件最终保存的扩展字段会跟接口组件返回的扩展字段内容一致,若路由配置信息的扩展字段没有变化,接口组件从数据库中取出的路由配置信息也不会变化,另一方面接口组件使用的是保序的JSON文本数据序列化个格式,即kv不变的话,生成的JSON字符串中扩展字段顺序是一致的,故接口组件返回的扩展字段中JSON字符串内容也不会变化。故在管理组件与数据库的路由配置信息对账流程中,该扩展字段依然可以保障一致性。
管理组件与代理组件之间的路由配置信息对账的信令交互图可以参见图9中S906- S909所示,所述方法还包括:
S906、管理组件向所述代理组件发送第二路由配置请求。
S907、管理组件接收所述代理组件返回的路由配置信息。
S908、管理组件将所述管理组件中存储的路由配置信息与所述代理组件返回的路由配置信息进行比对。
S909、若不一致,利用所述管理组件中存储的路由配置信息纠正所述代理组件中的路由配置信息。
S909的一种可能实现方式可以是管理组件向代理组件发送配置纠正消息(参见图9中S9091所示),该配置纠正消息中包括管理组件中存储的路由配置信息,代理组件完成纠正后,会向管理组件发送配置纠正结果(参见图9中S9092所示),以通知管理组件完成纠正。
需要说明的是,在管理组件与代理组件的对账流程中,管理组件是将扩展字段以字符串的形式下发到代理组件,代理组件中保存的扩展字段跟管理组件中保存是扩展字段是相同的JSON字符串,不会进行解析或者转换,故在管理组件与代理组件的对账流程中,该扩展字段依然可以保障一致性。
管理组件与代理组件的路由配置信息对账,以及管理组件与数据库的路由配置信息对账存在竞态关系,故可以存在一把锁,即当管理组件与代理组件进行路由配置信息对账时,使用加锁机制,从而避免管理组件与数据库进行路由配置信息对账;或者,当管理组件与数据库进行路由配置信息对账时,使用加锁机制,从而避免管理组件与代理组件进行路由配置信息对账。
接下来,将结合实际应用场景对本申请实施例提供的动态路由方法进行介绍。在API网关领域,为了实现动态路由,设计了图5所示的API网关动态路由系统架构。在该系统架构基础上,当发布新功能时,通过API网关产品实现API网关动态路由,参见图10,所述方法包括:
S1001、用户通过API网关产品发布新功能。
S1002、接口组件获取新增路由配置以及对应的目标路由配置信息。
其中,目标路由配置信息可以是接口组件从数据库中获取的。数据库中存储的路由配置信息中,在原有二进制序列化协议的基础上设置有文本数据序列化格式的扩展字段。
S1003、接口组件将新增路由配置按照文本数据序列化格式写入目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息。
S1004、接口组件向管理组件下发更新后的目标路由配置信息。
S1005、管理组件将更新后的目标路由配置信息透传至代理组件。
S1006、代理组件将更新后的目标路由配置信息透传至网关组件。
其中,S1001- S1006的具体实现方式可以参见图3对应的实施例所示,此处不再赘述。
S1007、管理组件与代理组件进行路由配置信息对账。
S1008、管理组件与数据库进行路由配置信息对账。
其中,S1007和S1008的具体实现方式可以参见图9对应的实施例所示,此处不再赘述。
基于图3对应实施例提供的动态路由方法,本申请实施例还提供一种动态路由装置,参见图11,所述装置1100部署在接口组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述装置1100包括获取单元1101、写入单元1102和发送单元1103:
所述获取单元1101,用于获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
所述写入单元1102,用于将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;
所述发送单元1103,用于向管理组件下发所述更新后的目标路由配置信息,以便所述管理组件将所述更新后的目标路由配置信息透传至代理组件,再由所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
在一种可能的实现方式中,路由配置信息中按照配置类型设置不同对象的扩展字段,所述写入单元1102,用于:
确定所述新增路由配置对应的目标配置类型;
将所述新增路由配置按照所述文本数据序列格式写入所述目标配置类型对应的目标对象的扩展字段中。
在一种可能的实现方式中,所述扩展字段的字段长度小于预设阈值。
在一种可能的实现方式中,所述写入单元1102,用于:
对所述新增路由配置进行评审,得到评审结果;
若所述评审结果表示已绑定所述目标对象,将所述新增路由配置按照所述文本数据序列格式写入所述目标配置类型对应的目标对象的扩展字段中。
在一种可能的实现方式中,所述装置还包括接收单元、获取单元和返回单元:
所述接收单元,用于接收管理组件发送的第一路由配置请求;
所述获取单元,用于根据所述第一路由配置请求从数据库中获取路由配置信息;
所述返回单元,用于将从所述数据库中获取的路由配置信息返回至所述管理组件,以便所述管理组件将所述接口组件从数据库中获取的路由配置信息与所述管理组件中存储的路由配置信息进行比对。
基于图3对应的实施例,本申请实施例还提供一种动态路由装置,参见图12,所述装置1200部署在管理组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述装置1200包括接收单元1201和发送单元1202:
所述接收单元1201,用于接收接口组件下发的更新后的目标路由配置信息,所述更新后的目标路由配置信息是所述接口组件将获取到的新增路由配置按照所述文本数据序列化格式写入对应的目标路由配置信息的扩展字段中得到的,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
所述发送单元1202,用于向代理组件透传所述更新后的目标路由配置信息,以便所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
在一种可能的实现方式中,所述装置还包括比对单元和纠正单元:
所述发送单元1202还用于:
向接口组件发送第一路由配置请求;
所述接收单元1201,还用于:
接收所述接口组件从数据库中获取的路由配置信息;
所述比对单元,用于将所述管理组件中存储的路由配置信息与所述接口组件从数据库中获取的路由配置信息进行比对;
所述纠正单元,用于若所述比对单元确定所述管理组件中存储的路由配置信息与所述接口组件从数据库中获取的路由配置信息不一致,利用所述接口组件从数据库中获取的路由配置信息纠正所述管理组件中的路由配置信息。
在一种可能的实现方式中,所述发送单元1202还用于:
向所述代理组件发送第二路由配置请求;
所述接收单元1201,还用于:
接收所述代理组件返回的路由配置信息;
所述比对单元,用于将所述管理组件中存储的路由配置信息与所述代理组件返回的路由配置信息进行比对;
所述纠正单元,用于若所述比对单元确定所述管理组件中存储的路由配置信息与所述代理组件返回的路由配置信息不一致,利用所述管理组件中存储的路由配置信息纠正所述代理组件中的路由配置信息。
本申请实施例还提供了一种用于动态路由的设备,该设备可以是终端设备,以终端设备为智能手机为例:
图13示出的是与本申请实施例提供的终端设备相关的智能手机的部分结构的框图。参考图13,智能手机包括:射频(英文全称:Radio Frequency,英文缩写:RF)电路1310、存储器1320、输入单元1330、显示单元1340、传感器1350、音频电路1360、无线保真(英文全称:wireless fidelity,英文缩写:WiFi)模块1370、处理器1380、以及电源1390等部件。输入单元1330可包括触控面板1331以及其他输入设备1332,显示单元1340可包括显示面板1341,音频电路1360可以包括扬声器1361和传声器1362。本领域技术人员可以理解,图13中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储器1320可用于存储软件程序以及模块,处理器1380通过运行存储在存储器1320的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器1320可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1320可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1380是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器1320内的软件程序和/或模块,以及调用存储在存储器1320内的数据,执行智能手机的各种功能和处理数据,从而对智能手机进行整体监控。可选的,处理器1380可包括一个或多个处理单元;优选的,处理器1380可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1380中。
在本实施例中,由所述终端设备中的处理器1380所执行的步骤可以基于图13所示的结构实现。
该设备还可以包括服务器,请参见图14所示,图14为本申请实施例提供的服务器1400的结构图,服务器1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,简称CPU)1422(例如,一个或一个以上处理器)和存储器1432,一个或一个以上存储应用程序1442或数据1444的存储介质1430(例如一个或一个以上海量存储设备)。其中,存储器1432和存储介质1430可以是短暂存储或持久存储。存储在存储介质1430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1422可以设置为与存储介质1430通信,在服务器1400上执行存储介质1430中的一系列指令操作。
服务器1400还可以包括一个或一个以上电源1426,一个或一个以上有线或无线网络接口1450,一个或一个以上输入输出接口1458,和/或,一个或一个以上操作系统1441,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
在本实施例中,所述服务器1400中的中央处理器1422可以执行以下步骤:
获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;
向管理组件下发所述更新后的目标路由配置信息,以便所述管理组件将所述更新后的目标路由配置信息透传至代理组件,再由所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
或者,接收接口组件下发的更新后的目标路由配置信息,所述更新后的目标路由配置信息是所述接口组件将获取到的新增路由配置按照所述文本数据序列化格式写入对应的目标路由配置信息的扩展字段中得到的,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
向代理组件透传所述更新后的目标路由配置信息,以便所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
根据本申请的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行前述各个实施例所述的动态路由方法。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例各种可选实现方式中提供的方法。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术成员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (15)
1.一种动态路由方法,其特征在于,所述方法由接口组件执行,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述方法包括:
获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;
向管理组件下发所述更新后的目标路由配置信息,以便所述管理组件将所述更新后的目标路由配置信息透传至代理组件,再由所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
2.根据权利要求1所述的方法,其特征在于,路由配置信息中按照配置类型设置不同对象的扩展字段,所述将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息,包括:
确定所述新增路由配置对应的目标配置类型;
将所述新增路由配置按照所述文本数据序列化格式写入所述目标配置类型对应的目标对象的扩展字段中。
3.根据权利要求1或2所述的方法,其特征在于,所述扩展字段的字段长度小于预设阈值。
4.根据权利要求3所述的方法,其特征在于,所述将所述新增路由配置按照所述文本数据序列化格式写入所述目标配置类型对应的目标对象的扩展字段中,包括:
对所述新增路由配置进行评审,得到评审结果;
若所述评审结果表示已绑定所述目标对象,将所述新增路由配置按照所述文本数据序列化格式写入所述目标配置类型对应的目标对象的扩展字段中。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收管理组件发送的第一路由配置请求;
根据所述第一路由配置请求从数据库中获取路由配置信息;
将从所述数据库中获取的路由配置信息返回至所述管理组件,以便所述管理组件将所述接口组件从数据库中获取的路由配置信息与所述管理组件中存储的路由配置信息进行比对。
6.一种动态路由方法,其特征在于,所述方法由管理组件执行,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述方法包括:
接收接口组件下发的更新后的目标路由配置信息,所述更新后的目标路由配置信息是所述接口组件将获取到的新增路由配置按照所述文本数据序列化格式写入对应的目标路由配置信息的扩展字段中得到的,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
向代理组件透传所述更新后的目标路由配置信息,以便所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
向接口组件发送第一路由配置请求;
接收所述接口组件从数据库中获取的路由配置信息;
将所述管理组件中存储的路由配置信息与所述接口组件从数据库中获取的路由配置信息进行比对;
若不一致,利用所述接口组件从数据库中获取的路由配置信息纠正所述管理组件中的路由配置信息。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
向所述代理组件发送第二路由配置请求;
接收所述代理组件返回的路由配置信息;
将所述管理组件中存储的路由配置信息与所述代理组件返回的路由配置信息进行比对;
若不一致,利用所述管理组件中存储的路由配置信息纠正所述代理组件中的路由配置信息。
9.一种动态路由装置,其特征在于,所述装置部署在接口组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述装置包括获取单元、写入单元和发送单元:
所述获取单元,用于获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
所述写入单元,用于将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;
所述发送单元,用于向管理组件下发所述更新后的目标路由配置信息,以便所述管理组件将所述更新后的目标路由配置信息透传至代理组件,再由所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
10.根据权利要求9所述的装置,其特征在于,路由配置信息中按照配置类型设置不同对象的扩展字段,所述写入单元具体用于:
确定所述新增路由配置对应的目标配置类型;
将所述新增路由配置按照所述文本数据序列化格式写入所述目标配置类型对应的目标对象的扩展字段中。
11.一种动态路由装置,其特征在于,所述装置部署在管理组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示,所述装置包括接收单元和发送单元:
所述接收单元,用于接收接口组件下发的更新后的目标路由配置信息,所述更新后的目标路由配置信息是所述接口组件将获取到的新增路由配置按照所述文本数据序列化格式写入对应的目标路由配置信息的扩展字段中得到的,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;
所述发送单元,用于向代理组件透传所述更新后的目标路由配置信息,以便所述代理组件将所述更新后的目标路由配置信息透传至网关组件。
12.一种动态路由系统,其特征在于,所述系统包括接口组件、管理组件、代理组件和网关组件,路由配置信息中设置有扩展字段,所述扩展字段采用文本数据序列化格式表示:
所述接口组件,用于获取新增路由配置以及对应的目标路由配置信息,所述新增路由配置用于表示对所述目标路由配置信息的修改情况;将所述新增路由配置按照所述文本数据序列化格式写入所述目标路由配置信息的扩展字段中,得到更新后的目标路由配置信息;向所述管理组件下发所述更新后的目标路由配置信息;
所述管理组件,用于向所述代理组件透传所述更新后的路由配置信息;
所述代理组件,用于向所述网关组件透传所述更新后的路由配置信息;
所述网关组件,用于从所述更新后的路由配置信息的扩展字段中解析所述新增路由配置,以用于转发业务请求。
13.根据权利要求12所述的系统,其特征在于,所述系统还包括数据库:
所述数据库用于存储路由配置信息,所述目标路由配置信息是所述接口组件从所述数据库存储的路由配置信息中获取的。
14.一种用于动态路由的设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行权利要求1-5或6-8中任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-5或6-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110261165.4A CN112636992B (zh) | 2021-03-10 | 2021-03-10 | 一种动态路由方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110261165.4A CN112636992B (zh) | 2021-03-10 | 2021-03-10 | 一种动态路由方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112636992A CN112636992A (zh) | 2021-04-09 |
CN112636992B true CN112636992B (zh) | 2021-06-22 |
Family
ID=75297749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110261165.4A Active CN112636992B (zh) | 2021-03-10 | 2021-03-10 | 一种动态路由方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112636992B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113411234B (zh) * | 2021-06-17 | 2022-08-16 | 杭州遥望网络科技有限公司 | 一种接口测试方法、系统及计算机可读存储介质 |
CN114422358B (zh) * | 2022-01-26 | 2024-01-30 | 中国农业银行股份有限公司 | Api网关配置更新方法及设备 |
CN115150271B (zh) * | 2022-06-29 | 2023-11-21 | 中国第一汽车股份有限公司 | 网关的升级和数据路由方法、装置、设备及存储介质 |
CN115170708B (zh) * | 2022-07-11 | 2023-05-05 | 上海哔哩哔哩科技有限公司 | 3d图像实现方法及系统 |
CN117081976B (zh) * | 2023-10-17 | 2024-01-16 | 建银工程咨询有限责任公司 | 网关路由的配置方法及其装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110493130A (zh) * | 2019-07-27 | 2019-11-22 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 天地一体化网络动静态混合路由方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2973977B1 (fr) * | 2011-04-07 | 2014-04-25 | Commissariat Energie Atomique | Procede et dispositif d'optimisation du routage d'un flux |
CN111025974A (zh) * | 2019-12-13 | 2020-04-17 | 厦门宏发汽车电子有限公司 | 一种车载网关控制器、其配置方法及汽车系统 |
CN111290865A (zh) * | 2020-02-10 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 一种服务调用方法、装置、电子设备和存储介质 |
CN111314141B (zh) * | 2020-02-21 | 2023-01-06 | 腾讯云计算(北京)有限责任公司 | 路由更新方法及装置 |
CN111314226A (zh) * | 2020-03-04 | 2020-06-19 | 厦门靠谱云股份有限公司 | 一种可在zuul网关动态配置多协议下游服务转发的方法 |
-
2021
- 2021-03-10 CN CN202110261165.4A patent/CN112636992B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110493130A (zh) * | 2019-07-27 | 2019-11-22 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 天地一体化网络动静态混合路由方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112636992A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112636992B (zh) | 一种动态路由方法、装置、设备及存储介质 | |
CN111090699A (zh) | 业务数据的同步方法和装置、存储介质、电子装置 | |
CN108804306B (zh) | 用于自动测试系统的方法和系统 | |
CN111143382B (zh) | 数据处理方法、系统和计算机可读存储介质 | |
CN106713469B (zh) | 用于分布式容器的动态加载方法、装置及系统 | |
CN111064626B (zh) | 配置更新方法、装置、服务器及可读存储介质 | |
CN110019498B (zh) | 日志同步方法及装置、存储介质、电子设备 | |
CN109561151B (zh) | 数据存储方法、装置、服务器和存储介质 | |
CN107666493B (zh) | 一种数据库配置方法及其设备 | |
JP2016508638A (ja) | 階層データ構造のノードにおいて再帰的イベントリスナを用いる方法およびシステム | |
CN107665141B (zh) | 一种数据库配置方法及其设备 | |
CN110765165A (zh) | 一种跨系统数据同步处理的方法、装置及系统 | |
CN107203437B (zh) | 防止内存数据丢失的方法、装置和系统 | |
CN112988583A (zh) | 数据库语法兼容性测试的方法和装置 | |
CN115878046A (zh) | 数据处理方法、系统、装置、存储介质及电子设备 | |
CN111338834A (zh) | 数据存储方法和装置 | |
CN114153856A (zh) | 主机数据双写方法及装置 | |
WO2023197851A1 (zh) | 异常组件的识别方法、装置、设备、存储介质及程序产品 | |
CN110798358A (zh) | 分布式服务标识方法、装置、计算机可读介质及电子设备 | |
CN112988879A (zh) | 访问数据库的方法、系统、装置、存储介质及处理器 | |
CN114500289B (zh) | 控制平面恢复方法、装置、控制节点及存储介质 | |
CN113179332B (zh) | 用于获取配置信息的方法、电子设备和存储介质 | |
CN115454666A (zh) | 消息队列集群间的数据同步方法和装置 | |
CN114328464A (zh) | 分布式存储设备的数据维护方法、装置、设备和可读介质 | |
CN113722228A (zh) | 软件系统测试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40042041 Country of ref document: HK |