CN113778569A - 基于人工智能的系统接口迁移方法、装置及相关设备 - Google Patents
基于人工智能的系统接口迁移方法、装置及相关设备 Download PDFInfo
- Publication number
- CN113778569A CN113778569A CN202111060225.2A CN202111060225A CN113778569A CN 113778569 A CN113778569 A CN 113778569A CN 202111060225 A CN202111060225 A CN 202111060225A CN 113778569 A CN113778569 A CN 113778569A
- Authority
- CN
- China
- Prior art keywords
- preset
- service system
- request
- interface
- forwarding
- 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.)
- Pending
Links
- 238000013508 migration Methods 0.000 title claims abstract description 77
- 230000005012 migration Effects 0.000 title claims abstract description 77
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 65
- 238000004590 computer program Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000005111 flow chemistry technique Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010992 reflux Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
Abstract
本申请属于人工智能技术领域,本申请提供了一种基于人工智能的系统接口迁移方法、装置及相关设备。本申请通过基于预设第一服务系统,获取接口调用端发送的请求,根据请求,识别出请求所属的预设API接口,基于预设第一服务系统包含的预设网页代理服务器,获取预设API接口对应的预设实例,若预设实例的配置为预设第二服务系统包含的预设第二服务接口,将请转发至所述预设第二服务系统,可以在不变更API接口的情况下,实现预设第二服务系统兼容预设第一服务系统,将预设第一服务系统的接口迁移至预设第二服务系统,可以提高将所述预设第一服务系统的接口迁移至所述预设第二服务系统的平滑性与效率,提高对流量迁移的便捷性与效率。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及系统流量迁移技术领域,具体涉及一种基于人工智能的系统接口迁移方法、装置、计算机设备及计算机可读存储介质。
背景技术
对于线上正在运行的大型系统,提供了大量的API接口,涉及到大量的调用方,老系统因为系统升级改造对于调用方应该是透明的,不允许对API接口地址进行变更,但是对于迁移到的新系统,有API命名规范,也存在不能兼容老系统的接口的问题。通常的处理方式是在新系统中使用Nginx进行转发,但是需要迁移的API接口数量可能有数千条,那就需要在Nginx配置数千条规则,导致配置文件过大,运维人员在Nginx上维护非常困难,很容易出错,难以保证准确性,降低了接口迁移的效率。
发明内容
本申请提供了一种基于人工智能的系统接口迁移方法、装置、计算机设备及计算机可读存储介质,能够解决传统技术中不同系统之间流量迁移效率较低的技术问题。
第一方面,本申请提供了一种基于人工智能的系统接口迁移方法,包括:基于预设第一服务系统,获取接口调用端发送的请求;根据所述请求,识别出所述请求所属的预设API接口;基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统,其中,所述预设第二服务接口配置于所述预设实例,所述预设实例配置于所述预设网页代理服务器。
第二方面,本申请还提供了一种基于人工智能的系统接口迁移装置,包括:第一获取单元,用于基于预设第一服务系统,获取接口调用端发送的请求;第一识别单元,用于根据所述请求,识别出所述请求所属的预设API接口;第一转发单元,用于基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统,其中,所述预设第二服务接口配置于所述预设实例,所述预设实例配置于所述预设网页代理服务器。
第三方面,本申请还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现所述基于人工智能的系统接口迁移方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行所述基于人工智能的系统接口迁移方法的步骤。
本申请提供了一种基于人工智能的系统接口迁移方法、装置、计算机设备及计算机可读存储介质。本申请通过基于预设第一服务系统,获取接口调用端发送的请求,根据所述请求,识别出所述请求所属的预设API接口,基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请转发至所述预设第二服务系统,若所述预设实例的配置为所述预设第一服务系统包含的预设第一服务接口,仍将所述请求转发至所述预设第一服务系统,根据原有的API逻辑进行流量处理,从而可以在不变更API接口的情况下,实现所述预设第二服务系统兼容所述预设第一服务系统,将所述预设第一服务系统的接口迁移至所述预设第二服务系统,同时将所述预设第一服务系统的流量迁移至所述预设第二服务系统,由于无需变更API接口,从而可以提高将所述预设第一服务系统的接口迁移至所述预设第二服务系统的平滑性与效率,同时提高对流量迁移的便捷性与效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的基于人工智能的系统接口迁移方法的一个流程示意图;
图2为本申请实施例提供的基于人工智能的系统接口迁移方法的一个示例流程示意图;
图3为本申请实施例提供的基于人工智能的系统接口迁移方法的第一个子流程示意图;
图4为本申请实施例提供的基于人工智能的系统接口迁移方法的第二个子流程示意图;
图5为本申请实施例提供的基于人工智能的系统接口迁移方法的第三个子流程示意图;
图6为本申请实施例提供的基于人工智能的系统接口迁移方法的第四个子流程示意图;
图7为本申请实施例提供的基于人工智能的系统接口迁移方法的第五个子流程示意图;
图8为本申请实施例提供的基于人工智能的系统接口迁移装置的一个示意性框图;
图9为本申请实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
请参阅图1与图2,图1为本申请实施例提供的基于人工智能的系统接口迁移方法的一个流程示意图,图2为本申请实施例提供的基于人工智能的系统接口迁移方法的一个示例流程示意图,本申请实施例可以基于人工智能技术对系统流量进行获取和处理,其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,自动控制系统流量的迁移,人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。如图1与图2所示,所述方法包括以下步骤S11-S13:
S11、基于预设第一服务系统,获取接口调用端发送的请求。
具体地,对于线上正在运行的大型系统,服务器后台提供了大量的预设API接口,可以通过每个预设API接口对应处理预设业务,外部的接口调用端可以调用各自所需的预设API接口以处理相应业务,接口调用端调用预设API接口处理业务时,会发送请求,所述请求对应产生流量,即所述请求对应的流量,尤其对于业务量大的系统,会产生大量请求,同时对应产生大量流量,后台服务器处理大量请求的过程,会涉及到负载均衡的处理流量的问题,其中,后台服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
在将大型系统包含的预设第一服务系统(可以称为老系统)更新为预设第二服务系统(可以称为新系统)时,需要将大量请求对应的流量从所述预设第一服务系统迁移至所述预设第二服务系统。为了保证业务的正常运行,所述预设第一服务系统对于接口调用端应该是透明的,即不允许对所述预设第一服务系统的API接口地址进行变更,因此,本申请实施例可以继续基于所述预设第一服务系统的API接口地址,接口调用端通过调用所述API接口地址进行业务处理,从而基于所述预设第一服务系统,获取接口调用端通过调用API接口发送的请求,所述请求对应产生相应的流量,对所述请求处理的过程,即为处理所述流量的过程。
S12、根据所述请求,识别出所述请求所属的预设API接口。
具体地,由于接口调用端通过调用业务对应的预设API接口,进而发送请求处理业务,因此,可以根据所述请求所调用的预设API接口,识别出所述请求所属的预设API接口,即根据所述请求,可以确定所述请求归属于哪个预设API接口,通过哪个预设API接口对应的服务器进行处理。
S13、基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统,其中,所述预设第二服务接口配置于所述预设实例,所述预设实例配置于所述预设网页代理服务器。
其中,所述实例为“类”在实例化之后叫做“实例”,实例用于描述服务器的标识,所述标识可以为服务接口,例如服务接口的IP地址,即流量对应的请求由哪个预设服务器或者服务器集群进行处理。
具体地,对于线上大型系统面对的大量请求,一般会通过预设网页代理服务器处理大量请求相对应的负载均衡,将不同请求尽可能均衡地分散到不同的服务器进行处理,所述预设网页代理服务器可以为网页服务器软件,例如,所述预设网页代理服务器可以为Nginx,通过设置Nginx层,基于Nginx配置实例,实现负载均衡,其中,所述Nginx(Engine x)是高性能的HTTP和反向代理Web服务器,所述预设网页代理服务器还可以为F5负载均衡器或者LVS(即linux virtual server)负载均衡器等。
基于所述预设第一服务系统包含的预设网页代理服务器,可预先将所述预设第二服务系统包含的预设第二服务接口,通过预设实例配置至所述预设网页代理服务器,其中,服务接口包括服务器IP地址。例如,针对将旧系统的流量迁移到新系统时,对外提供的URL不能改变的情形,可以在旧系统的Nginx层,将新系统的部分Nginx实例配置到旧系统Nginx中,从而将新系统的预设第二服务接口通过预设实例配置于旧系统的预设网页代理服务器。
在接口调用端通过调用所述预设第一服务系统的原先API接口地址发送请求,在请求达到所述预设第一服务系统包含的预设网页代理服务器后,根据所述请求,识别出所述请求所属的预设API接口,再基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求对应的流量强制转发至所述预设第二服务系统,例如,Nginx可以通过匹配control来控制转发,也可以通过Nginx重写rewrite将所述请求转发至预设第二服务系统包含的预设第二服务接口,若所述预设实例的配置为所述预设第一服务系统包含的第一预设服务接口,仍将所述请求对应的流量转发至所述预设第一服务系统,根据原来的流量处理方式进行处理。
本申请实施例,通过基于预设第一服务系统,获取接口调用端发送的请求,根据所述请求,识别出所述请求所属的预设API接口,基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请转发至所述预设第二服务系统,若所述预设实例的配置为所述预设第一服务系统包含的预设第一服务接口,仍将所述请求转发至所述预设第一服务系统,根据原有的API逻辑进行流量处理,从而可以在不变更API接口的情况下,实现所述预设第二服务系统兼容所述预设第一服务系统,将所述预设第一服务系统的接口迁移至所述预设第二服务系统,同时将所述预设第一服务系统的流量迁移至所述预设第二服务系统,由于无需变更API接口,从而可以提高将所述预设第一服务系统的接口迁移至所述预设第二服务系统的平滑性与效率,同时提高对流量迁移的便捷性与效率。
在一实施例中,所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之前,还包括:
按照预设API接口维度,基于所述预设第二服务接口对应的所述预设实例,将预设数量的所述预设第二服务接口配置于所述预设网页代理服务器,其中,所述预设数量小于所有所述预设API接口的数量。
其中,所述预设API接口维度包括API接口类型、API接口重要性或者API接口流量大小等API接口属性。
具体地,由于API接口对应服务接口,针对大量预设API接口的情形,为了进一步提高基于人工智能的系统接口迁移的平滑性与稳定性,可以将所有的API接口,按照预设API接口维度,基于所述预设第二服务接口对应的所述预设实例,一部分一部分地,将部分所述预设第二服务接口配置于所述预设网页代理服务器,从而逐步地将所有API接口从所述预设第一服务系统迁移至所述预设第二服务系统,例如,将API接口进行逐个转移,即基于所述预设第一服务系统包含的预设网页代理服务器,可预先将所述预设第二服务系统的部分服务接口对应的预设实例配置至所述预设第一服务系统包含的预设网页代理服务器中,从而将部分服务接口对应的API接口由所述预设第一服务系统迁移至所述预设第二服务系统,从而将所有API接口由所述预设第一服务系统逐步地迁移至所述预设第二服务系统。例如,针对将旧系统的流量迁移到新系统时,对外提供的URL不能改变的情形,可以在旧系统的Nginx层,将新系统的部分Nginx实例配置到旧系统Nginx中,从而将该部分Nginx实例对应的API接口由旧系统迁移至新系统,从而逐步地,将新系统的所有Nginx实例配置到旧系统Nginx中,从而将所有Nginx实例各自对应的API接口由旧系统迁移至新系统,相比传统技术中通过新系统中使用Nginx将所有API接口进行转发时,若需要迁移的API接口数量较大,从而新系统的Nginx配置规则多大数千条,导致配置文件过大,在Nginx上维护非常困难,难以保证准确性,本申请实施例由于可以逐步地,将所有API接口由所述预设第一服务系统逐步地迁移至所述预设第二服务系统,可以保证Nginx配置的准确性,从而提高基于人工智能的系统接口迁移的平滑性与稳定性。
请参阅图2与图3,图3为本申请实施例提供的基于人工智能的系统接口迁移方法的第一个子流程示意图。如图图2与图3所示,在该实施例中,所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之后,还包括:
S14、基于所述预设第二服务系统的预设网关,判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件;
S15、若满足所述预设转发条件,将所述请求转发至所述预设第二服务系统;
S16、若不满足所述预设转发条件,将所述请求回流至所述预设第一服务系统。
具体地,将API接口由所述预设第一服务系统迁移至所述预设第二服务系统的迁移过程中,可以对所述预设第二服务系统的预设第二服务接口的流量进行控制,可以在所述预设第二服务系统的网关层设置预设转发条件,满足所述预设转发条件,将所述请求转发至所述预设第二服务系统,同时将所述请求对应的流量迁移至所述预设第二服务系统,若不满足所述预设转发条件,将所述请求回流至所述预设第一服务系统,同时将所述请求对应的流量回流至所述预设第一服务系统,按原先的API接口处理逻辑进行处理,可以实现对所述请求是否转发的控制,如果某个API接口有问题,可以在网关进行流量配置,系统无需重启或者发版,就可以将流量无感切回到旧系统,保持原有的API逻辑,从而可以达到API接口及流量平滑迁移的目的,同时实现对所述预设第二服务接口的流量控制,能够提高API接口迁移风险的灵活性与可控性。其中,所述预设转发条件可以为流量条件,所述流量条件可以为流量大小的条件,例如流量超过一定的预设流量阈值进行转发,流量未超过预设流量阈值不进行转发等,所述流量条件也可以为通过设置概率的随机数控制流量的迁移。
请参阅图4,图4为本申请实施例提供的基于人工智能的系统接口迁移方法的第二个子流程示意图。如图4所示,在该实施例中,所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤包括:
S151、根据所述请求,基于预设概率随机数生成方式,生成随机数,其中,所述随机数的最大值为预设概率的分母;
S152、判断所述随机数是否小于或者等于所述预设概率的分子;
S153、若所述随机数小于或者等于所述预设概率的分子,判定满足将所述请求转发至所述预设第二服务系统的预设转发条件;
S154、若所述随机数大于所述预设概率的分子,判定不满足将所述请求转发至所述预设第二服务系统的预设转发条件。
其中,所述预设概率为预设转发概率,用于描述将所述请求由所述预设第一服务系统转发至所述预设第二服务系统的概率,以控制流量的迁移量。
具体地,可以通过预先设置将每个API接口的多大比例的流量迁移至所述预设第二服务系统,所述API接口的其它流量仍然发送所述预设第一服务系统,根据预先设置的流量迁移比例确定流量迁移的概率,即将所述请求由所述预设第一服务系统转发至所述预设第二服务系统的概率,然后根据设置的概率生成随机数,通过所述随机数控制流量的迁移,即按照概率生成随机数,通过随机数控制请求的转发,以实现控制流量的迁移量。例如,在将旧系统升级到新系统时,通过上述迁移方式,将旧系统的API接口迁移到新系统时,为了实现对所述预设第二服务接口的流量控制,可以将新系统接入阿波罗配置中心(即Apollo(阿波罗)是开源配置管理中心),在配置中心设置对需要迁移的API接口进行配置,配置json如下:
其中,“rate”:“1/1000”,用于描述将该API接口千分之一的流量迁移至新系统,即千分之一的概率将请求由旧系统转发至新系统,请求通过旧系统的Nginx强制将老接口/oldsystem/intefaceA转发到新系统的网关后,产生一个随机数,根据上述配置,rate表示需要将多少流量转发到新系统,实现逻辑为:以分母大小为随机数最大值,如果随机数小于分子,则将请求通过新系统的网关路由到新系统/newSystem/intefaceB,如果随机数大于分子,则通过新系统的网关将请求回流到旧系统,按概率随机生成随机数,通过随机数控制所述请求转发到新系统(即预设第二服务系统),从而达到对每个API接口的流量进行迁移量的精准控制,可以在评估新系统稳定性与可靠性后,再将每个API接口的流量迁移至新系统,不但可以提高新系统对大流量的适应性,并且可以进一步提高API接口迁移风险的可控性、灵活性与稳定性,尤其适合对系统要求高、API接口多且复杂的系统,例如需要对新系统进行数据接收的压力测试时,可以逐渐增大流量的迁移量,以测试新系统接收流量的压力与稳定性。
请参阅图5,图5为本申请实施例提供的基于人工智能的系统接口迁移方法的第三个子流程示意图。如图5所示,在该实施例中,所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤之前,还包括:
S155、判断是否允许将所述请求转发至所述预设第二服务系统;
S156、若允许将所述请求转发至所述预设第二服务系统,执行所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤;
S157、若不允许将所述请求转发至所述预设第二服务系统,将所述请求回流至所述预设第一服务系统。
具体地,可以先判断是否允许将所述请求转发至所述预设第二服务系统,若允许将所述请求转发至所述预设第二服务系统,再进一步判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件,若不允许将所述请求转发至所述预设第二服务系统,直接将所述请求回流至所述预设第一服务系统,无需进一步判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件,尤其当所述预设第二服务系统的服务接口不适合进行API接口迁移时,直接将API接口的迁移设置为不允许将所述请求转发至所述预设第二服务系统,可以进一步提高对基于人工智能的系统接口迁移的控制灵活性与控制效率,尤其能够提高API接口迁移风险的可控性。
进一步地,判断是否允许将所述请求转发至所述预设第二服务系统,可以通过判断预设转发关键字KEY的值是否为允许转发对应的预设转发值,以判定是否允许转发,若所述预设转发关键字KEY的值为允许转发对应的预设转发值,判定允许将所述请求转发至所述预设第二服务系统,若所述预设转发关键字KEY的值不为允许转发对应的预设转发值,判定不允许将所述请求转发至所述预设第二服务系统。例如,可以设置“KEY=1”,允许将所述请求转发至所述预设第二服务系统,“KEY=0”,不允许将所述请求转发至所述预设第二服务系统,借助预设转发关键字KEY作为转发开关,既可以方便控制将所述请求转发至所述预设第二服务系统的灵活性,也方便对是否允许转发进行配置,能够提高对基于人工智能的系统接口迁移的控制效率与灵活性。
请参阅图6,图6为本申请实施例提供的基于人工智能的系统接口迁移方法的第四个子流程示意图。如图6所示,在该实施例中,所述基于所述预设第二服务系统的预设网关,判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤之前,还包括:
S18、确定所述预设第二服务系统与所述预设接口配置中心处于连接状态;
S19、基于所述预设接口配置中心,接收对所述预设转发条件的配置。
具体地,设置预设转发条件,可以基于预设接口配置中心进行设置,例如可以基于阿波罗配置中心,将所述预设第二服务系统接入所述预设接口配置中心,确定所述预设第二服务系统与所述预设接口配置中心处于连接状态,然后基于所述预设接口配置中心,用户对需要迁移的API接口进行配置,从而接收对所述预设转发条件的配置,相比传统技术中通过使用Nginx对API接口进行转发规则配置,可以大大提高对预设转发条件对应的转发规则配置的便利性与效率。
请参阅图7,图7为本申请实施例提供的基于人工智能的系统接口迁移方法的第五个子流程示意图。如图7所示,在该实施例中,所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之后,还包括:
S20、基于所述预设第二服务系统的预设网关,判断将所述请求转发至所述预设第二服务系统是否成功;
S21、若将所述请求转发至所述预设第二服务系统未成功,将所述请求回流至所述预设第一服务系统;
S22、若成功将所述请求转发至所述预设第二服务系统,按照所述预设第二服务系统的预设API处理逻辑处理所述请求。
具体地,对于从所述预设第一服务系统转发至所述预设第二服务系统的请求,可以基于所述预设第二服务系统的预设网关,判断将所述请求转发至所述预设第二服务系统是否成功,若将所述请求转发至所述预设第二服务系统成功,按照所述预设第二服务系统的API处理逻辑处理所述请求,若将所述请求转发至所述预设第二服务系统未成功,例如,若所述预设第二服务系统的预设网关出现故障,或者所述请求对应的预设第二服务系统包含的预设第二服务接口出现故障,从而导致将所述请求转发至所述预设第二服务系统未成功,即将所述API接口从所述预设第一服务系统迁移至所述预设第二服务系统未成功,可以将所述请求回流至所述预设第一服务系统,以继续通过所述预设第一服务系统按照原来的API处理逻辑处理所述请求,从而在所述预设第二服务系统的服务接口出现问题时,系统无需重启或者发版,就可以将流量无感切回至所述预设第一服务系统,保持原有的API逻辑,可以达到平滑迁移接口的目的,并且API接口迁移风险可控,保证API接口迁移的安全性,尤其适合对系统要求高,API接口多且复杂的系统。
需要说明的是,上述各个实施例所述的基于人工智能的系统接口迁移方法,可以根据需要将不同实施例中包含的技术特征重新进行组合,以获取组合后的实施方案,但都在本申请要求的保护范围之内。
请参阅图8,图8为本申请实施例提供的基于人工智能的系统接口迁移装置的一个示意性框图。对应于上述所述基于人工智能的系统接口迁移方法,本申请实施例还提供一种基于人工智能的系统接口迁移装置。如图8所示,该基于人工智能的系统接口迁移装置包括用于执行上述所述基于人工智能的系统接口迁移方法的单元,该基于人工智能的系统接口迁移装置可以被配置于计算机设备中。具体地,请参阅图8,所述基于人工智能的系统接口迁移装置80包括第一获取单元81、第一识别单元82、及第一转发单元83。
其中,第一获取单元81,用于基于预设第一服务系统,获取接口调用端发送的请求;
第一识别单元82,用于根据所述请求,识别出所述请求所属的预设API接口;
第一转发单元83,用于基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统,其中,所述预设第二服务接口配置于所述预设实例,所述预设实例配置于所述预设网页代理服务器。
在一实施例中,所述基于人工智能的系统接口迁移装置80还包括:
配置单元,用于按照预设API接口维度,基于所述预设第二服务接口对应的所述预设实例,将预设数量的所述预设第二服务接口配置于所述预设网页代理服务器,其中,所述预设数量小于所有所述预设API接口的数量。
在一实施例中,所述基于人工智能的系统接口迁移装置80还包括:
第一判断单元,用于基于所述预设第二服务系统的预设网关,判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件;
第二转发单元,用于若满足所述预设转发条件,将所述请求转发至所述预设第二服务系统;
第一回流单元,用于若不满足所述预设转发条件,将所述请求回流至所述预设第一服务系统。
在一实施例中,所述第一判断单元包括:
生成子单元,用于根据所述请求,基于预设概率随机数生成方式,生成随机数,其中,所述随机数的最大值为预设概率的分母;
第一判断子单元,用于判断所述随机数是否小于或者等于所述预设概率的分子;
第一判定子单元,用于若所述随机数小于或者等于所述预设概率的分子,判定满足将所述请求转发至所述预设第二服务系统的预设转发条件。
在一实施例中,所述基于人工智能的系统接口迁移装置80还包括:
第二判断单元,用于判断是否允许将所述请求转发至所述预设第二服务系统;
第一执行子单元,用于若允许将所述请求转发至所述预设第二服务系统,执行所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤。
在一实施例中,所述基于人工智能的系统接口迁移装置80还包括:
确定单元,用于确定所述预设第二服务系统与所述预设接口配置中心处于连接状态;
接收单元,用于基于所述预设接口配置中心,接收对所述预设转发条件的配置。
在一实施例中,所述基于人工智能的系统接口迁移装置80还包括:
第三判断单元,用于基于所述预设第二服务系统的预设网关,判断将所述请求转发至所述预设第二服务系统是否成功;
第二回流单元,用于若将所述请求转发至所述预设第二服务系统未成功,将所述请求回流至所述预设第一服务系统。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述基于人工智能的系统接口迁移装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
同时,上述基于人工智能的系统接口迁移装置中各个单元的划分和连接方式仅用于举例说明,在其他实施例中,可将基于人工智能的系统接口迁移装置按照需要划分为不同的单元,也可将基于人工智能的系统接口迁移装置中各单元采取不同的连接顺序和方式,以完成上述基于人工智能的系统接口迁移装置的全部或部分功能。
上述基于人工智能的系统接口迁移装置可以实现为一种计算机程序的形式,该计算机程序可以在如图9所示的计算机设备上运行。
请参阅图9,图9是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是台式机电脑或者服务器等计算机设备,也可以是其他设备中的组件或者部件。
参阅图9,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504,所述存储器也可以为易失性存储介质。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行一种上述基于人工智能的系统接口迁移方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种上述基于人工智能的系统接口迁移方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图9所示实施例一致,在此不再赘述。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:基于预设第一服务系统,获取接口调用端发送的请求;根据所述请求,识别出所述请求所属的预设API接口;基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统,其中,所述预设第二服务接口配置于所述预设实例,所述预设实例配置于所述预设网页代理服务器。
在一实施例中,所述处理器502在实现所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之前,还实现以下步骤:
按照预设API接口维度,基于所述预设第二服务接口对应的所述预设实例,将预设数量的所述预设第二服务接口配置于所述预设网页代理服务器,其中,所述预设数量小于所有所述预设API接口的数量。
在一实施例中,所述处理器502在实现所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之后,还实现以下步骤:
基于所述预设第二服务系统的预设网关,判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件;
若满足所述预设转发条件,将所述请求转发至所述预设第二服务系统;
若不满足所述预设转发条件,将所述请求回流至所述预设第一服务系统。
在一实施例中,所述处理器502在实现所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤时,具体实现以下步骤:
根据所述请求,基于预设概率随机数生成方式,生成随机数,其中,所述随机数的最大值为预设概率的分母;
判断所述随机数是否小于或者等于所述预设概率的分子;
若所述随机数小于或者等于所述预设概率的分子,判定满足将所述请求转发至所述预设第二服务系统的预设转发条件。
在一实施例中,所述处理器502在实现所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤之前,还实现以下步骤:
判断是否允许将所述请求转发至所述预设第二服务系统;
若允许将所述请求转发至所述预设第二服务系统,执行所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤。
在一实施例中,所述处理器502在实现所述基于所述预设第二服务系统的预设网关,判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤之前,还实现以下步骤:
确定所述预设第二服务系统与所述预设接口配置中心处于连接状态;
基于所述预设接口配置中心,接收对所述预设转发条件的配置。
在一实施例中,所述处理器502在实现所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之后,还实现以下步骤:
基于所述预设第二服务系统的预设网关,判断将所述请求转发至所述预设第二服务系统是否成功;
若将所述请求转发至所述预设第二服务系统未成功,将所述请求回流至所述预设第一服务系统。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessingUnit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来完成,该计算机程序可存储于一计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本申请还提供一种计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质,也可以为易失性的计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时使处理器执行如下步骤:
一种计算机程序产品,当其在计算机上运行时,使得计算机执行以上各实施例中所描述的所述基于人工智能的系统接口迁移方法的步骤。
所述计算机可读存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述计算机可读存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述存储介质为实体的、非瞬时性的存储介质,例如可以是U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、磁碟或者光盘等各种可以存储计算机程序的实体存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本申请实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,终端,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
以上所述,仅为本申请的具体实施方式,但本申请明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种基于人工智能的系统接口迁移方法,其特征在于,所述方法包括:
基于预设第一服务系统,获取接口调用端发送的请求;
根据所述请求,识别出所述请求所属的预设API接口;
基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统,其中,所述预设第二服务接口配置于所述预设实例,所述预设实例配置于所述预设网页代理服务器。
2.根据权利要求1所述基于人工智能的系统接口迁移方法,其特征在于,所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之前,还包括:
按照预设API接口维度,基于所述预设第二服务接口对应的所述预设实例,将预设数量的所述预设第二服务接口配置于所述预设网页代理服务器,其中,所述预设数量小于所有所述预设API接口的数量。
3.根据权利要求1或者2所述基于人工智能的系统接口迁移方法,其特征在于,所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之后,还包括:
基于所述预设第二服务系统的预设网关,判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件;
若满足所述预设转发条件,将所述请求转发至所述预设第二服务系统;
若不满足所述预设转发条件,将所述请求回流至所述预设第一服务系统。
4.根据权利要求3所述基于人工智能的系统接口迁移方法,其特征在于,所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤包括:
根据所述请求,基于预设概率随机数生成方式,生成随机数,其中,所述随机数的最大值为预设概率的分母;
判断所述随机数是否小于或者等于所述预设概率的分子;
若所述随机数小于或者等于所述预设概率的分子,判定满足将所述请求转发至所述预设第二服务系统的预设转发条件。
5.根据权利要求3所述基于人工智能的系统接口迁移方法,其特征在于,所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤之前,还包括:
判断是否允许将所述请求转发至所述预设第二服务系统;
若允许将所述请求转发至所述预设第二服务系统,执行所述判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤。
6.根据权利要求3所述基于人工智能的系统接口迁移方法,其特征在于,所述基于所述预设第二服务系统的预设网关,判断是否满足将所述请求转发至所述预设第二服务系统的预设转发条件的步骤之前,还包括:
确定所述预设第二服务系统与所述预设接口配置中心处于连接状态;
基于所述预设接口配置中心,接收对所述预设转发条件的配置。
7.根据权利要求1所述基于人工智能的系统接口迁移方法,其特征在于,所述若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统的步骤之后,还包括:
基于所述预设第二服务系统的预设网关,判断将所述请求转发至所述预设第二服务系统是否成功;
若将所述请求转发至所述预设第二服务系统未成功,将所述请求回流至所述预设第一服务系统。
8.一种基于人工智能的系统接口迁移装置,其特征在于,所述装置包括:
第一获取单元,用于基于预设第一服务系统,获取接口调用端发送的请求;
第一识别单元,用于根据所述请求,识别出所述请求所属的预设API接口;
第一转发单元,用于基于所述预设第一服务系统包含的预设网页代理服务器,获取所述预设API接口对应的预设实例,若所述预设实例的配置为预设第二服务系统包含的预设第二服务接口,将所述请求转发至所述预设第二服务系统,其中,所述预设第二服务接口配置于所述预设实例,所述预设实例配置于所述预设网页代理服务器。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器以及与所述存储器相连的处理器;所述存储器用于存储计算机程序;所述处理器用于运行所述计算机程序,以执行如权利要求1-7任一项所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111060225.2A CN113778569A (zh) | 2021-09-10 | 2021-09-10 | 基于人工智能的系统接口迁移方法、装置及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111060225.2A CN113778569A (zh) | 2021-09-10 | 2021-09-10 | 基于人工智能的系统接口迁移方法、装置及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113778569A true CN113778569A (zh) | 2021-12-10 |
Family
ID=78842363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111060225.2A Pending CN113778569A (zh) | 2021-09-10 | 2021-09-10 | 基于人工智能的系统接口迁移方法、装置及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113778569A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110851512A (zh) * | 2019-10-10 | 2020-02-28 | 上海易点时空网络有限公司 | 用于开源框架的数据配置方法及装置 |
CN111431746A (zh) * | 2020-03-20 | 2020-07-17 | 杭州有赞科技有限公司 | 一种api网关迁移方法及系统 |
CN111464602A (zh) * | 2020-03-24 | 2020-07-28 | 平安银行股份有限公司 | 流量处理方法、装置、计算机设备和存储介质 |
CN111800441A (zh) * | 2019-04-08 | 2020-10-20 | 阿里巴巴集团控股有限公司 | 数据处理方法、系统、装置、用户端服务器、用户端及管控服务器 |
US10956242B1 (en) * | 2017-12-06 | 2021-03-23 | Amazon Technologies, Inc. | Automating the migration of web service implementations to a service provider system |
-
2021
- 2021-09-10 CN CN202111060225.2A patent/CN113778569A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10956242B1 (en) * | 2017-12-06 | 2021-03-23 | Amazon Technologies, Inc. | Automating the migration of web service implementations to a service provider system |
CN111800441A (zh) * | 2019-04-08 | 2020-10-20 | 阿里巴巴集团控股有限公司 | 数据处理方法、系统、装置、用户端服务器、用户端及管控服务器 |
CN110851512A (zh) * | 2019-10-10 | 2020-02-28 | 上海易点时空网络有限公司 | 用于开源框架的数据配置方法及装置 |
CN111431746A (zh) * | 2020-03-20 | 2020-07-17 | 杭州有赞科技有限公司 | 一种api网关迁移方法及系统 |
CN111464602A (zh) * | 2020-03-24 | 2020-07-28 | 平安银行股份有限公司 | 流量处理方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102045136B1 (ko) | 애플리케이션 배포를 위한 맞춤 통신 채널들 | |
CN109586969B (zh) | 内容分发网络容灾方法、装置、计算机设备及存储介质 | |
US10326708B2 (en) | Cloud computing services framework | |
US10603584B2 (en) | Dynamic resource allocation for gaming applications | |
US11573816B1 (en) | Prefetching and managing container images using cluster manifest | |
CN111367983A (zh) | 数据库访问方法、系统、设备和存储介质 | |
US8930409B2 (en) | System and method for supporting named operations in a distributed data grid | |
US8825817B1 (en) | Using a template to update a stack of resources | |
US10324754B2 (en) | Managing virtual machine patterns | |
KR20200002034A (ko) | 온-디바이스 기계 학습 플랫폼 | |
US9548897B2 (en) | Network entity registry for network entity handles included in network traffic policies enforced for a provider network | |
CN111277432B (zh) | 配置信息更新方法、装置、电子设备及存储介质 | |
CN114787781A (zh) | 用于启用高可用性受管理故障转移服务的系统和方法 | |
CN109995814B (zh) | 云主机资源的迁移方法及装置、通信设备、存储介质 | |
US9590859B2 (en) | Discovering resources of a distributed computing environment | |
US11108871B2 (en) | Dynamic generation of network routing configuration with service requirements | |
US11539707B2 (en) | Dynamic security policy consolidation | |
US11356485B2 (en) | Pre-signed URLs with custom policies for data access in an object storage system | |
CN106878311B (zh) | Http报文的重写方法及装置 | |
CN111158716B (zh) | 版本升级调用方法、装置、计算机系统及可读存储介质 | |
CN112732312A (zh) | 用于更新应用程序的方法及装置、电子设备和介质 | |
CN113541987A (zh) | 一种更新配置数据的方法和装置 | |
CN113778569A (zh) | 基于人工智能的系统接口迁移方法、装置及相关设备 | |
US10977218B1 (en) | Distributed application development | |
US11483353B1 (en) | Generating access management policies from example requests |
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 |