CN117278394A - 网关流量迁移方法、装置和*** - Google Patents

网关流量迁移方法、装置和*** Download PDF

Info

Publication number
CN117278394A
CN117278394A CN202311554453.4A CN202311554453A CN117278394A CN 117278394 A CN117278394 A CN 117278394A CN 202311554453 A CN202311554453 A CN 202311554453A CN 117278394 A CN117278394 A CN 117278394A
Authority
CN
China
Prior art keywords
target
gateway
tangential
server
flow
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.)
Granted
Application number
CN202311554453.4A
Other languages
English (en)
Other versions
CN117278394B (zh
Inventor
曹洪羽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jingdong Technology Information Technology Co Ltd
Original Assignee
Jingdong Technology Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jingdong Technology Information Technology Co Ltd filed Critical Jingdong Technology Information Technology Co Ltd
Priority to CN202311554453.4A priority Critical patent/CN117278394B/zh
Publication of CN117278394A publication Critical patent/CN117278394A/zh
Application granted granted Critical
Publication of CN117278394B publication Critical patent/CN117278394B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0889Techniques to speed-up the configuration process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开了网关流量迁移方法、装置和***,涉及流量调度技术领域。该方法的一具体实施方式包括:响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关;响应于确定网关数据迁移完成,获取目标切流信息;将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载。该实施方式实现了切流策略的灵活配置,节约了配置成本。

Description

网关流量迁移方法、装置和***
技术领域
本申请涉及计算机技术领域,具体涉及流量调度技术领域,尤其涉及一种网关流量迁移方法、装置和***。
背景技术
高并发场景下的网关融合,需要把流量迁移到新网关的场景,目前市面上使用过的技术大多就是利用nginx的负载层做手动修改,直接将流量打入新网关,或者,新网关使用新的地址,让客户端批量将网关地址用新的网关地址进行替换。
其中,网关流量迁移的过程风险过大,直接在负载层做流量转发,缺少了灰度过程,并且若流量迁移的过程有请求报错的情况,想将流量切回到老网关,还要手动修改负载层,时间成本巨大。同样的,如果让客户端去修改网关地址迁移,也需要耗费大量的时间成本。
发明内容
本申请实施例提供了一种网关流量迁移方法、装置、***、设备以及存储介质。
根据第一方面,本申请实施例提供了一种网关流量迁移方法,该方法包括:响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关;响应于确定网关数据迁移完成,获取目标切流信息;将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载。
根据第二方面,本申请实施例提供了一种网关流量迁移方法,该方法包括:响应于接收到控制切流服务器发送的目标切流信息,基于目标切流信息,生成配置文件;加载配置文件。
根据第三方面,本申请实施例提供了一种网关流量迁移装置,该装置包括:检测模块,被配置成响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关;获取模块,被配置成响应于确定网关数据迁移完成,获取目标切流信息;生成模块,被配置成将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载。
根据第四方面,本申请实施例提供了一种网关流量迁移装置,该装置包括:配置模块,被配置成响应于接收到控制切流服务器发送的目标切流信息,基于目标切流信息,生成配置文件;加载模块,被配置成加载配置文件。
根据第五方面,本申请实施例提供了一种网关流量迁移***,该***包括:控制切流服务器,用于执行第一方面的任一实施例的网关流量迁移方法;切流服务器,用于执行第二方面的任一实施例的网关流量迁移方法。
根据第六方面,本申请实施例提供了一种电子设备,该电子设备包括一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被该一个或多个处理器执行,使得一个或多个处理器实现如第一方面或第二方面的任一实施例的网关流量迁移方法。
根据第七方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面或第二方面的任一实施例的网关流量迁移方法。
本申请通过响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关;响应于确定网关数据迁移完成,获取目标切流信息;将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载,在网关升级过程中,实现了切流策略的灵活配置,节约了配置成本。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其他特征将通过以下的说明书而变得容易理解。
附图说明
图1是本申请可以应用于其中的示例性***架构图;
图2a是根据本申请的网关流量迁移方法的一个实施例的流程图;
图2b是根据本申请的网关流量迁移方法的又一个实施例的示意图;
图3是根据本申请的网关流量迁移方法的又一个实施例的流程图;
图4是根据本申请的网关流量迁移装置的一个实施例的流程图;
图5是根据本申请的网关流量迁移装置的又一个实施例的流程图;
图6a是根据本申请的网关流量迁移***的一个实施例的流程图;
图6b是根据本申请的网关流量迁移***的一个实施例的示意图;
图7是适于用来实现本申请实施例的服务器的计算机***的结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的网关流量迁移方法的实施例的示例性***架构100。
如图1所示,***架构100可以包括控制切流服务器101,网络102和切流服务器103、104。网络102用于在控制切流服务器101和切流服务器103、104之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
切流服务器103、104通过网络102与控制切流服务器101交互,以接收控制切流服务器101发送的目标切流信息,并基于所述目标切流信息,生成配置文件。
其中,控制切流服务器101可以是提供各种服务的服务器,例如,响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关;响应于确定网关数据迁移完成,获取目标切流信息;将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载。
切流服务器103、104可以是提供各种服务的服务器,例如,响应于接收到控制切流服务器发送的目标切流信息,基于目标切流信息,生成配置文件;加载配置文件。
应该理解,图1中的控制切流服务器和切流服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的源端设备、中间设备、出口设备和服务器。
图2a示出了可以应用于本申请的网关流量迁移方法的实施例的流程200。在本实施例中,网关流量迁移方法应用于控制切流服务器,具体包括以下步骤:
步骤201,响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关。
在本实施例中,执行主体(如图1中所示的控制切流服务器101)可实时或定期监测网关数据迁移指令,响应于监测到网关数据迁移指令,将旧网关的网关数据迁移到新网关。
这里,执行主体可首先判断新网关与旧网关的数据结构是否匹配,若匹配,则可直接将旧网关的网关数据迁移到新网关,若不匹配,则可对旧网关的网关数据进行数据结构的转换,并将转换后的数据迁移到新网关。
在一些可选的方式中,将旧网关的网关数据迁移到新网关,包括:响应于确定新网关与旧网关的数据结构不匹配,对旧网关的网关数据进行数据结构转换,得到新网关的API描述文件;基于API描述文件,将旧网关的网关数据迁移到新网关。
在本实现方式中,执行主体可经由迁移管控平台接收用户输入的数据迁移指令,响应于接收到数据迁移指令,执行主体可对新网关和旧网关的数据结构是否匹配进行判断,若不匹配,则可采用现有技术或未来发展技术中的可实现数据结构转换的程序设计语言,例如,Python、MVEL2.0表达式语言等,对旧网关的网关数据进行数据结构转换,得到新网关的API(Application Programming Interface,应用程序编程接口)描述文件,并通过MQ(Message Queue,消息队列)形式发送到新网关控制台,并控制新网关控制台对API描述文件进行解析,将解析后数据***到新网关的数据库,自动触发部署逻辑,完成数据的兼容性迁移。
其中,迁移管控平台为呈现给用户的网页,连接着旧网关的数据源,可查询旧网关数据,以及接收用户输入的数据迁移指令。
这里,MVEL2.0表达式是自定义填写的,可作为旧网关数据转化为适合新网关存储的数据结构的媒介。
该实现方式通过响应于确定新网关与旧网关的数据结构不匹配,对旧网关的网关数据进行数据结构转换,得到新网关的API描述文件;基于API描述文件,将旧网关的网关数据迁移到新网关,实现了在新、旧网关的数据结构不匹配时,网关数据的快速迁移。
在一些可选的方式中,基于API描述文件,将旧网关的网关数据迁移到新网关,包括:对API描述文件进行预发布环境的验证;响应于验证通过,对所述API描述文件进行解析,并将解析结果***新网关的数据库。
在本实现方式中,执行主体在得到新网关的API描述文件后,响应于接收到用户经由新网关的控制台输入的预发验证的指令,对API描述文件进行预发布环境的验证,若验证通过,则对API描述文件进行解析,并将解析结果***到新网关的数据库,以实现数据的谦容性迁移。
其中,新网关控制台可以网页形式呈现给用户,用于接收用户输入的预发迁流、预发验证的指令。
该实现方式通过对API描述文件进行预发布环境的验证;响应于验证通过,对所述API描述文件进行解析,并将解析结果***新网关的数据库,实现了对网关数据迁移预发环境的验证,降低了数据迁移风险。
步骤202,响应于确定网关数据迁移完成,获取目标切流信息。
在本实施例中,响应于确定网关数据迁移完成,执行主体可经由切流工具管控平台获取目标切流信息。
其中,目标切流信息包括目标切流策略及目标切流策略所对应的参数。
这里,切流工具管控平台可呈现供用户确定目标切流策略及所对应的参数的指定表单,指定表单中还可以包括:方法名称、方法描述、切流环境、当前状态、接口URL(UniformResource Locator,统一资源***)等信息。
其中,目标切流策略可根据实际需求设定,例如,全部流入旧网关、新旧网关分流百分比、白名单IP切流等,本申请对此不作限定。
具体地,如图2b所示,目标切流策略为白名单IP切流,目标切流策略所对应的参数为:111.202.148.47,111.202.148.48。
在一些可选的方式中,目标切流策略可以包括以下至少一项:全部流入旧网关、全部流入新网关、指定设备号切流、白名单IP切流、新旧网关分流百分比、按照时间窗口切流。
在本实现方式中,用户可通过切流工具管控平台所呈现的用于确定目标切流策略及所对应的参数的指定表单,将以下切流策略中的至少一项确定为目标切流策略:全部流入旧网关、全部流入新网关、指定设备号切流、白名单IP切流、新旧网关分流百分比、按照时间窗口切流。
这里,若目标切流策略为白名单IP切流,执行主体可获取用户通过上述指定表单配置的切流IP,并将用户配置的切流IP作为目标切流策略对应的参数;若目标策略为新旧网关分流百分比,执行主体可获取用户通过上述指定表单配置的流向新网关的流量/流向旧网关的流量占总流量的百分比,并将用户配置的分流百分比作为目标切流策略对应的参数;若目标切流策略为按照时间窗口切流,执行主体可获取用户通过上述指定表单配置的窗口开始时间、窗口结束时间,并将用户配置的窗口开始时间、窗口结束时间作为目标切流策略对应的参数。
该实现方式通过配置目标切流策略包括以下至少一项:全部流入旧网关、全部流入新网关、指定设备号切流、白名单IP切流、新旧网关分流百分比、按照时间窗口切流,提升了切流灵活性和有效性。
步骤203,将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载。
在本实施例中,执行主体可将目标切流信息封装为切流指令的形式,如,json的形式,并将切流指令发送至切流服务器,切流服务器在接收到切流指令后,可对切流指令进行解析,得到目标切流信息。
进一步地,切流服务器指定指令下可预先配置多个对应不同切流策略的Lua脚本,即Lua算法脚本,其中,每个切流策略对应一个Lua算法脚本,不同切流策略对应的Lua算法脚本不同,响应于获取到目标切流信息,切流服务器可基于目标切流信息,生成配置文件,并自动记载配置文件,具体包括:将指定指令下的Lua脚本切换为对应目标切流策略的目标Lua脚本,并基于目标切流策略所对应的参数对目标Lua脚本中的变量进行赋值。
其中,Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。
切流服务器可以为现有技术或未来发展技术中的用于切流的服务器,例如,Nginx,Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP(InternetMail Access Protocol,交互邮件访问协议)/POP3(Post Office Protocol - Version 3,邮局协议版本3)/SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务。
指定指令为用于匹配不同URL请求的块级指令,例如,Nginx中的location。
对于切流服务器,加载完配置文件后,响应于获取到待迁移流量,可基于指定指令及目标Lua脚本,对待迁移流量进行判断,若符合基于目标Lua脚本所确定的流向新网关的条件,则传输到新网关的upstream,即新网关的一组后端服务器集群,若不符合,则传输到旧网关的upstream,即通过目标Lua脚本确定流量分发的方向。
这里,需要指出的是,执行主体在将目标切流信息发送至切流服务器之前,可对目标切流信息进行预发布环境的验证,响应于验证通过,将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载。
在一些可选的方式中,在将目标切流信息发送至切流服务器之前,该方法还包括:对目标切流信息进行预发布环境的验证;响应于验证通过,将目标切流信息发送至切流服务器。
在本实现方式中,执行主体在得到目标切流信息后,响应于接收到用户经由新网关的控制台输入的预发迁流的指令,对目标切流信息进行预发布环境的验证,若验证通过,将目标切流信息发送至切流服务器。
其中,新网关控制台可以网页形式呈现给用户,用于接收用户输入的预发迁流、预发验证的指令。
该实现方式通过对目标切流信息进行预发布环境的验证;响应于验证通过,将目标切流信息发送至切流服务器,实现了对目标切流信息预发环境的验证,降低了流量迁移风险。
图3示出了可以应用于本申请的网关流量迁移方法的实施例的流程300。在本实施例中,网关流量迁移方法应用于切流服务器,具体包括以下步骤:
步骤301,响应于接收到控制切流服务器发送的目标切流信息,基于目标切流信息,生成配置文件。
在本实施例中,执行主体(如图1中所示的切流服务器103、104)可实时或定期监测控制切流服务器发送的目标切流信息,响应于接收到目标切流信息,可基于目标切流信息,生成配置文件,具体包括:将指定指令下的Lua脚本切换为对应目标切流策略的目标Lua脚本,并基于目标切流策略所对应的参数对目标Lua脚本中的变量进行赋值。
这里,需要指出的是,执行主体在获取到目标切流信息后,可将目标切流信息及目标切流信息所对应的指定指令保存到本地内存,以增加数据稳定性。
具体地,若目标切流策略为白名单IP切流,即按照指定IP切流,则保存IP信息,并基于IP信息对目标Lua脚本的变量进行赋值;若目标切流策略为按照时间窗口切流,则保存窗口开始时间和结束时间,并基于窗口开始时间和窗口结束时间,对目标Lua脚本的变量进行赋值。
步骤302,加载配置文件。
在本实施例中,执行主体在生成配置文件后,可通过reload指令自动加载配置文件,即通过热重启的方式加载配置文件。
在一些可选的方式中,该方法还包括:响应于获取到待迁移流量,基于指定指令和目标Lua脚本,确定待迁移流量的流向。
在本实现方式中,配置文件加载完成后,执行主体响应于获取到待迁移流量,可基于指定指令及目标Lua脚本,对待迁移流量进行判断,若符合基于目标Lua脚本所确定的流向新网关的条件,则传输到新网关的upstream,若不符合,则传输到旧网关的upstream,即通过目标Lua脚本确定流量分发的方向。
该实现方式通过响应于获取到待迁移流量,基于指定指令和目标Lua脚本,确定待迁移流量的流向,实现了网关流量的灵活迁移。
进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种网关流量迁移装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于控制切流服务器中。
如图4所示,本实施例的网关流量迁移装置400包括:检测模块401、获取模块402和生成模块403。
其中,检测模块401,可被配置成响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关。
获取模块402,可被配置成响应于确定网关数据迁移完成,获取目标切流信息。
生成模块403,可被配置成将目标切流信息发送至切流服务器,以使切流服务器基于目标切流信息,生成配置文件并加载。
在本实施例的一些可选的方式中,检测模块,进一步被配置成响应于确定新网关与旧网关的数据结构不匹配,对旧网关的网关数据进行数据结构转换,得到新网关的API描述文件;基于API描述文件,将旧网关的网关数据迁移到新网关。
在本实施例的一些可选的方式中,检测模块进一步被配置成对API描述文件进行预发布环境的验证;响应于验证通过,对API描述文件进行解析,并将解析结果***新网关的数据库。
在本实施例的一些可选的方式中,该装置还包括验证模块,被配置成对目标切流信息进行预发布环境的验证;响应于验证通过,将所述目标切流信息发送至切流服务器。
在本实施例的一些可选的方式中,目标切流策略可以包括以下至少一项:全部流入旧网关、全部流入新网关、指定设备号切流、白名单IP切流、新旧网关分流百分比、按照时间窗口切流。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种网关流量迁移装置的一个实施例,该装置实施例与图3所示的方法实施例相对应,该装置具体可以应用于切流服务器中。
如图5所示,本实施例的网关流量迁移装置500包括:配置模块501和加载模块502。
其中,配置模块501,可被配置成响应于接收到控制切流服务器发送的目标切流信息,基于目标切流信息,生成配置文件。
加载模块502,可被配置成加载配置文件。
在本实施例的一些可选的方式中,该装置还包括分流模块,被配置成响应于获取到待迁移流量,基于指定指令和所述目标Lua脚本,确定待迁移流量的流向。
进一步参考图6a,本申请提供了一种网关流量迁移***的一个实施例。
在本实施例中,该***包括控制切流服务器601和切流服务器602。
其中,控制切流服务器601,用于执行如上述实施例2所描述的网关流量迁移方法。切流服务器602,用于执行如上述实施例3所描述的网关流量迁移方法。
应该理解,图6a中的控制切流服务器601,切流服务器602的数目仅仅是示意性的。根据实现需要,可以具有任意数目的控制切流服务器和切流服务器。
在一个具体地示例中,如图6b所示,控制切流服务器响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关。响应于确定网关数据迁移完成,获取目标切流信息,目标切流信息包括目标切流策略及所对应的参数。将目标切流信息封装为切流指令发送至切流服务器Nginx,例如,新增切流用的jen1、新增切流用的jen2。具体地,控制切流服务器向jen1发送切流指令,向jen2发送切流指令,切流服务器接收到切流指令后,对切流指令进行解析,得到目标切流策略及所对应的参数,例如,目标切流策略为新旧网关分流百分比,目标切流策略所对应的参数为40%,即40%流量流向新网关,60%流量流向旧网关。
这里,需要指出的是,控制切流服务器在将目标切流指令发送至切流服务器之前,可对目标切流指令采用预发域名进行预发布环境的验证(如,控制切流服务器可向JEN发送预发布环境的切流指令,JEN接收到切流指令后,对切流指令进行解析,得到目标切流策略及所对应的参数,JEN响应于获取到LB(Load Balance,负载均衡设备)待迁移流量,可基于location及目标Lua脚本,对待迁移流量进行判断,若符合基于目标Lua脚本所确定的流向新网关的条件,即待迁移流量为符合目标切流策略的流量,如,40%流量流向新网关,则将待迁移流量传输到新网关预发Nginx,若不符合,即待迁移流量为不符合目标切流策略的流量,则将待迁移流量传输到旧网关),若验证通过,再将切流指令发送至切流服务器,采用生产域名以进行生产环境的网关流量迁移。
进一步地,基于目标切流信息,生成配置文件并加载,具体包括:将指定指令(如location)下的Lua脚本切换为对应目标切流策略的目标Lua脚本,并基于目标切流策略所对应的参数对目标Lua脚本中的变量进行赋值。
进一步地,响应于获取到来自LB(负载均衡设备)待迁移流量,可基于location及目标Lua脚本,对待迁移流量进行判断,若符合基于目标Lua脚本所确定的流向新网关的条件,即待迁移流量为符合目标切流策略的流量,则将待迁移流量传输到新网关的upstream(如JEN新网关),若不符合,即待迁移流量为不符合目标切流策略的流量,则将待迁移流量传输到旧网关的upstream(如JEN机房A、JEN机房B),即通过目标Lua脚本确定流量分发的方向。
其中,JEN新网关对应新网关,JEN机房A、JEN机房B对应旧网关,来自LB待迁移流量可来自客户端APP、web、小程序等。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图7所示,是根据本申请实施例的网关流量迁移方法的电子设备的框图。
700是根据本申请实施例的网关流量迁移方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器***)。图7中以一个处理器701为例。
存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的网关流量迁移方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的网关流量迁移方法。
存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的网关流量迁移方法对应的程序指令/模块(例如,附图4所示的检测模块401、获取模块402和生成模块403)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的网关流量迁移方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储网关流量迁移的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至网关流量迁移的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
网关流量迁移方法的电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图7中以通过总线连接为例。
输入装置703可接收输入的数字或字符信息,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,在网关升级过程中,实现了切流策略的灵活配置,节约了配置成本。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (12)

1.一种网关流量迁移方法,应用于控制切流服务器,所述方法包括:
响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关;
响应于确定网关数据迁移完成,获取目标切流信息,所述目标切流信息包括目标切流策略及目标切流策略所对应的参数;
将所述目标切流信息发送至切流服务器,以使所述切流服务器基于所述目标切流信息,生成配置文件并加载,其中,所述基于所述目标切流信息,生成配置文件,包括:将指定指令下的Lua脚本切换为对应目标切流策略的目标Lua脚本,并基于所述目标切流策略所对应的参数对目标Lua脚本中的变量进行赋值,所述指定指令为用于匹配不同URL请求的块级指令。
2.根据权利要求1所述的方法,其中,所述将旧网关的网关数据迁移到新网关,包括:
响应于确定新网关与旧网关的数据结构不匹配,对所述旧网关的网关数据进行数据结构转换,得到新网关的API描述文件;
基于所述API描述文件,将旧网关的网关数据迁移到新网关。
3.根据权利要求2所述的方法,其中,所述基于所述API描述文件,将旧网关的网关数据迁移到新网关,包括:
对所述API描述文件进行预发布环境的验证;
响应于验证通过,对所述API描述文件进行解析,并将解析结果***新网关的数据库。
4.根据权利要求1所述的方法,在所述将所述目标切流信息发送至切流服务器之前,所述方法还包括:
对所述目标切流信息进行预发布环境的验证;
响应于验证通过,将所述目标切流信息发送至切流服务器。
5.根据权利要求1-4任一所述的方法,其中,所述目标切流策略包括以下至少一项:全部流入旧网关、全部流入新网关、指定设备号切流、白名单IP切流、新旧网关分流百分比、按照时间窗口切流。
6.一种网关流量迁移方法,应用于切流服务器,所述方法包括:
响应于接收到控制切流服务器发送的目标切流信息,基于所述目标切流信息,生成配置文件,包括:将指定指令下的Lua脚本切换为对应目标切流策略的目标Lua脚本,并基于目标切流策略所对应的参数对目标Lua脚本中的变量进行赋值,所述指定指令为用于匹配不同URL请求的块级指令,所述目标切流信息包括目标切流策略及目标切流策略所对应的参数;
加载所述配置文件。
7.根据权利要求6所述的方法,所述方法还包括:
响应于获取到待迁移流量,基于所述指定指令和所述目标Lua脚本,确定所述待迁移流量的流向。
8.一种网关流量迁移装置,应用于控制切流服务器,所述装置包括:
检测模块,被配置成响应于检测到网关数据迁移指令,将旧网关的网关数据迁移到新网关;
获取模块,被配置成响应于确定网关数据迁移完成,获取目标切流信息,所述目标切流信息包括目标切流策略及目标切流策略所对应的参数;
生成模块,被配置成将所述目标切流信息发送至切流服务器,以使所述切流服务器基于所述目标切流信息,生成配置文件并加载,其中,所述基于所述目标切流信息,生成配置文件,包括:将指定指令下的Lua脚本切换为对应目标切流策略的目标Lua脚本,并基于所述目标切流策略所对应的参数对目标Lua脚本中的变量进行赋值,所述指定指令为用于匹配不同URL请求的块级指令。
9.一种网关流量迁移装置,应用于切流服务器,所述装置包括:
配置模块,被配置成响应于接收到控制切流服务器发送的目标切流信息,基于所述目标切流信息,生成配置文件,包括:将指定指令下的Lua脚本切换为对应目标切流策略的目标Lua脚本,并基于目标切流策略所对应的参数对目标Lua脚本中的变量进行赋值,所述指定指令为用于匹配不同URL请求的块级指令,所述目标切流信息包括目标切流策略及目标切流策略所对应的参数;
加载模块,被配置成加载配置文件。
10.一种网关流量迁移***,所述***包括:控制切流服务器,切流服务器,
所述控制切流服务器,用于执行如权利要求1-5之一所述的方法;
所述切流服务器,用于执行如权利要求6-7之一所述的方法。
11.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的方法。
CN202311554453.4A 2023-11-21 2023-11-21 网关流量迁移方法、装置和*** Active CN117278394B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311554453.4A CN117278394B (zh) 2023-11-21 2023-11-21 网关流量迁移方法、装置和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311554453.4A CN117278394B (zh) 2023-11-21 2023-11-21 网关流量迁移方法、装置和***

Publications (2)

Publication Number Publication Date
CN117278394A true CN117278394A (zh) 2023-12-22
CN117278394B CN117278394B (zh) 2024-04-05

Family

ID=89201188

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311554453.4A Active CN117278394B (zh) 2023-11-21 2023-11-21 网关流量迁移方法、装置和***

Country Status (1)

Country Link
CN (1) CN117278394B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210389976A1 (en) * 2020-06-11 2021-12-16 Capital One Services, Llc Techniques to facilitate a migration process to cloud storage
WO2022117550A1 (en) * 2020-12-03 2022-06-09 Koninklijke Kpn N.V. Migration of remote data processing between servers
CN114826824A (zh) * 2022-04-01 2022-07-29 阿里云计算有限公司 流量迁移方法、设备、介质及产品
US11520605B1 (en) * 2022-05-25 2022-12-06 Kong Inc. Dynamically reordering plugin execution order at an API gateway of a microservices application
WO2023134627A1 (zh) * 2022-01-13 2023-07-20 中兴通讯股份有限公司 数据迁移方法和装置、电子设备、存储介质
CN116777599A (zh) * 2023-06-21 2023-09-19 招商银行股份有限公司 业务决策方法、装置、终端设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210389976A1 (en) * 2020-06-11 2021-12-16 Capital One Services, Llc Techniques to facilitate a migration process to cloud storage
WO2022117550A1 (en) * 2020-12-03 2022-06-09 Koninklijke Kpn N.V. Migration of remote data processing between servers
WO2023134627A1 (zh) * 2022-01-13 2023-07-20 中兴通讯股份有限公司 数据迁移方法和装置、电子设备、存储介质
CN114826824A (zh) * 2022-04-01 2022-07-29 阿里云计算有限公司 流量迁移方法、设备、介质及产品
US11520605B1 (en) * 2022-05-25 2022-12-06 Kong Inc. Dynamically reordering plugin execution order at an API gateway of a microservices application
CN116777599A (zh) * 2023-06-21 2023-09-19 招商银行股份有限公司 业务决策方法、装置、终端设备及存储介质

Also Published As

Publication number Publication date
CN117278394B (zh) 2024-04-05

Similar Documents

Publication Publication Date Title
US11178207B2 (en) Software version control without affecting a deployed container
US10574523B2 (en) Systems and methods for cloud-deployments with imperatives
US10333784B2 (en) Cloud system order and configuration using customized templates
US10430172B2 (en) Re-configuration in cloud computing environments
US11645582B2 (en) Parameter sharing in federated learning
US20170262355A1 (en) Debugging applications
US20170373999A1 (en) Familiarity-based involvement on an online group conversation
CN111770176B (zh) 流量调度方法及装置
CN111885114B (zh) 网关中的应用程序接口模块的升级方法、设备及存储介质
CN112925652A (zh) 应用资源部署方法、装置、电子设备和介质
US11349729B2 (en) Network service requests
CN111767149B (zh) 调度方法、装置、设备及存储设备
CN117278394B (zh) 网关流量迁移方法、装置和***
US10606222B2 (en) Identifying home automation correlated events and creating portable recipes
CN112084000A (zh) 容器集群的测试方法和装置
CN109254778B (zh) 用于部署信息流***的方法和装置
CN114661274A (zh) 用于生成智能合约的方法和装置
US11704119B2 (en) Migrating infrastructure as code between different cloud providers
CN115277428A (zh) 用于配置网络的方法和装置
CN115639953A (zh) 数据迁移方法和装置
CN112131095B (zh) 压力测试方法和装置
CN114338461A (zh) 一种网络连接监控方法及相关设备
CN109271310B (zh) 移动应用程序网络功能的开发测试方法和装置
CN113132447A (zh) 反向代理的方法和***
US9424120B1 (en) Prioritizing first failure data capture (FFDC) data for analysis

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