一种热切换方法、装置、设备及存储介质
文献发布时间:2024-04-18 20:01:30
技术领域
本发明涉及风险控制技术领域,特别涉及一种热切换方法、装置、设备及存储介质。
背景技术
在金融风控领域,风控系统经常需要面临升级、更新换代。风控系统对接的上游是庞大的交易系统(例如手机银行,企业网银等),金融交易系统要求的高稳定性和可靠性,需要整个升级过程做到无缝和平滑。目前行业中的做法是让新旧系统并行运行,通过增加一层网关将交易流水转发到新旧两套风控系统,在并行期网关调节选择旧风控系统链路的响应结果来返回,业务人员对两套系统的风控结果做比较和调优完毕后再通过网关调整采纳新系统的返回作为响应,最终关闭老系统链路来完成升级。使用传统网关,整个过程需大量人工介入修改配置、切换、启停、收集数据、比对结果。操作繁琐并且有如下缺点:不支持热切换,链路切换颗粒度粗放,采用请求转发的方式让各条链路欠缺独立性造成性能相互影响,不能分析响应结果。
由此可见,如何优化风控系统的升级过程是本领域要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种热切换方法、装置、设备及存储介质,可以在不中断业务的前提下实现风控系统的切换。其具体方案如下:
第一方面,本申请提供了一种热切换方法,包括:
为当前业务线开启镜像,以将旧风控系统设置为目标主链路,并将新风控系统设置为目标从链路;
利用所述目标主链路处理所述当前业务线对应的风控业务以得到相应的第一响应结果,将所述第一响应结果返回至相应的上游业务系统,并采集所述目标从链路针对所述风控业务的第二响应结果;
通过预设指令接口获取工作人员基于所述第一响应结果和所述第二响应结果对所述新风控系统下发的变更指令,并基于所述变更指令对所述新风控系统进行调整,以便利用相应的调整后风控系统处理所述当前业务线对应的风控业务。
可选的,所述为当前业务线开启镜像,以将旧风控系统设置为目标主链路,并将新风控系统设置为目标从链路,包括:
为当前业务线开启镜像,以将旧风控系统和新风控系统分别设置为初始主链路和初始从链路;
基于预设脚本语言将与所述当前业务线对应的第一预设业务配置信息注入所述初始主链路和所述初始从链路,得到目标主链路和目标从链路。
可选的,所述采集所述从链路针对所述风控业务的第二响应结果之后,还包括:
针对所述当前业务线对应的所述风控业务,从所述第一响应结果和所述第二响应结果中筛选不一致的异常响应结果;
通过预设人机交互接口展示所述异常响应结果,以便工作人员基于所述异常响应结果对所述新风控系统进行调整,得到调整后风控系统。
可选的,所述通过预设指令接口获取工作人员基于所述第一响应结果和所述第二响应结果对所述新风控系统下发的变更指令,并基于所述变更指令对所述新风口系统进行调整,以便利用相应的调整后风控系统处理所述当前业务线对应的风控业务,包括:
通过预设指令接口获取工作人员基于所述异常响应结果对所述新风控系统下发的变更指令;
基于所述变更指令对所述新风控系统进行调整,得到调整后风控系统,以便利用所述调整后风控系统处理所述当前业务线对应的风控业务。
可选的,所述利用相应的调整后风控系统处理所述当前业务线对应的风控业务,包括:
针对所述当前业务线,利用所述调整后风控系统设置新目标主链路;
利用所述新目标主链路处理所述当前业务线对应的风控业务。
可选的,所述针对所述当前业务线,利用所述调整后风控系统设置新目标主链路,包括:
将所述调整后风控系统设置为与所述当前业务线对应的新主链路;
基于预设脚本语言将与所述当前业务线对应的第二预设业务配置信息注入所述新主链路,以得到所述新目标主链路。
第二方面,本申请提供了一种热切换装置,包括:
链路设置模块,用于为当前业务线开启镜像,以将旧风控系统设置为目标主链路,并将新风控系统设置为目标从链路;
风控业务响应模块,用于利用所述主链路处理所述当前业务线对应的风控业务以得到相应的第一响应结果,将所述第一响应结果返回至相应的上游业务系统,并采集所述从链路针对所述风控业务的第二响应结果;
风控系统调整模块,用于通过预设指令接口获取工作人员基于所述第一响应结果和所述第二响应结果对所述新风控系统下发的变更指令,并基于所述变更指令对所述新风口系统进行调整,以便利用相应的调整后风控系统处理所述当前业务线对应的风控业务。
可选的,所述链路设置模块,包括:
链路设置单元,用于为当前业务线开启镜像,以将旧风控系统和新风控系统分别设置为初始主链路和初始从链路;
信息配置单元,用于基于预设脚本语言将与所述当前业务线对应的第一预设业务配置信息注入所述初始主链路和所述初始从链路,得到目标主链路和目标从链路。
第三方面,本申请提供了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序以实现如上述的热切换方法。
第四方面,本申请提供了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现如上述的热切换方法。
由此可见,本申请首先为当前业务线开启镜像,以将旧风控系统设置为目标主链路,并将新风控系统设置为目标从链路;然后利用所述目标主链路处理所述当前业务线对应的风控业务以得到相应的第一响应结果,将所述第一响应结果返回至相应的上游业务系统,并采集所述目标从链路针对所述风控业务的第二响应结果;再通过预设指令接口获取工作人员基于所述第一响应结果和所述第二响应结果对所述新风控系统下发的变更指令,并基于所述变更指令对所述新风控系统进行调整,以便利用相应的调整后风控系统处理所述当前业务线对应的风控业务。这样一来,本申请可以采用镜像的方式,对旧风控系统和新风控系统的链路做到进程隔离,可以在保证业务不中断的前提下,实现风控系统的切换,保证业务的稳定。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种热切换方法流程图;
图2为本申请公开的一种具体的热切换方法流程图;
图3为本申请公开的另一种具体的热切换方法流程图;
图4为本申请公开的一种热切换装置结构示意图;
图5为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1所示,本发明实施例公开了一种热切换方法,包括:
步骤S11、为当前业务线开启镜像,以将旧风控系统设置为目标主链路,并将新风控系统设置为目标从链路。
本申请中,首先为当前业务线开启镜像,需要指出的是,当前业务线可以包括多个业务;比如,手机银行、企业网银、个人网银三条业务线。进一步的,针对单个业务线,可以将旧风控系统设置为目标主链路,同时将新风控系统设置为目标从链路。在一种具体的实施例中,所述为当前业务线开启镜像,以将旧风控系统设置为目标主链路,并将新风控系统设置为目标从链路,可以包括:为当前业务线开启镜像,以将旧风控系统和新风控系统分别设置为初始主链路和初始从链路;基于预设脚本语言将与所述当前业务线对应的第一预设业务配置信息注入所述初始主链路和所述初始从链路,得到目标主链路和目标从链路。具体的,在设置链路时,首先为业务线开启镜像,设置初始主链路为旧风控系统,并设置初始从链路为新风控系统。进一步的,需要对这两条链路配置信息,具体的,可以基于预设脚本语言,将第一预设业务配置信息注入初始主链路和初始从链路。例如,可以将业务线对应的配置信息注入到主链路和从链路的lua(一种脚本语言)代码中,得到目标主链路和目标从链路。
步骤S12、利用所述目标主链路处理所述当前业务线对应的风控业务以得到相应的第一响应结果,将所述第一响应结果返回至相应的上游业务系统,并采集所述目标从链路针对所述风控业务的第二响应结果。
本申请中,处理当前业务线对应的风控业务时,是通过目标主链路的旧风控系统处理相关风控业务,这样得到第一响应结果;需要指出的是,该过程中,旧风控系统处理风控业务不会导致业务中断,因此在此过程中,上有业务系统仍是正常运行。进一步的,目标从链路的新风控系统也会处理当前业务线的风控业务,但是并不将相应的第二响应结果返回至上游业务系统。所述采集所述从链路针对所述风控业务的第二响应结果之后,还可以包括:针对所述当前业务线对应的所述风控业务,从所述第一响应结果和所述第二响应结果中筛选不一致的异常响应结果;通过预设人机交互接口展示所述异常响应结果,以便工作人员基于所述异常响应结果对所述新风控系统进行调整,得到调整后风控系统。具体的,通过目标主链路和目标从链路处理当前业务线的风控业务之后,可以从相应的第一响应结果和第二响应结果中筛选出不一致的异常响应结果;之后可以通过预设人机交互接口展示这些异常响应结果,这样可以方便工作人员基于异常响应结果对新风控系统进行调整优化,可以得到调整后风控系统。可以理解的是,本申请中调整优化新风控系统的过程不会影响旧风控系统对当前业务线的风控业务的处理过程,因此,上游业务系统对此完全无感。
步骤S13、通过预设指令接口获取工作人员基于所述第一响应结果和所述第二响应结果对所述新风控系统下发的变更指令,并基于所述变更指令对所述新风控系统进行调整,以便利用相应的调整后风控系统处理所述当前业务线对应的风控业务。
本申请中,通过目标主链路和目标从链路可以得到针对当前业务线的风控业务的第一响应结果和第二响应结果,之后可以通过预设指令接口获取工作人员基于第一响应结果和第二响应结果对新风控系统下发的变更指令;然后基于变更指令可以对新风控系统进行调整,以便利用调整后风控系统替换旧风控系统处理当前业务线的风控业务。
在一种具体的实施例中所述通过预设指令接口获取工作人员基于所述第一响应结果和所述第二响应结果对所述新风控系统下发的变更指令,并基于所述变更指令对所述新风口系统进行调整,以便利用相应的调整后风控系统处理所述当前业务线对应的风控业务,可以包括:通过预设指令接口获取工作人员基于所述异常响应结果对所述新风控系统下发的变更指令;基于所述变更指令对所述新风控系统进行调整,得到调整后风控系统,以便利用所述调整后风控系统处理所述当前业务线对应的风控业务。具体的,通过预设指令接口可以获取工作人员基于异常响应结果对新风控系统下发的变更指令,其中,异常响应结果为第一响应结果与第二响应结果之间不一致的响应结果。之后,再利用得到的变更指令对新风控系统进行调整,可以得到调整后风控系统。后续便可以利用调整后风控系统处理当前业务线对应的风控业务。
在另一种具体的实施例中,所述利用相应的调整后风控系统处理所述当前业务线对应的风控业务,可以包括:针对所述当前业务线,利用所述调整后风控系统设置新目标主链路;利用所述新目标主链路处理所述当前业务线对应的风控业务。具体的,通过调整后风控系统处理当前业务线对应的风控业务的过程中,首先针对当前业务线,利用调整后风控系统设置新目标主链路,之后利用该新目标主链路处理相关的风控业务。进一步的,所述针对所述当前业务线,利用所述调整后风控系统设置新目标主链路,可以包括:将所述调整后风控系统设置为与所述当前业务线对应的新主链路;基于预设脚本语言将与所述当前业务线对应的第二预设业务配置信息注入所述新主链路,以得到所述新目标主链路。需要指出的是,在主从链路lua代码块变更后会被立即装载。因此在切换发生后,下一次请求就会去往别的路由,不需要重启网关造成业务中断。
由此可见,本申请可以采用镜像的方式,对旧风控系统和新风控系统的链路做到进程隔离;并且在旧风控系统和新风控系统并行的过程中可以根据响应结果对新风控系统进行调整优化,之后在保证业务不中断的前提下,实现风控系统的切换,保证业务的稳定。
如图2所示,本申请实施例公开了一种热切换方法,包括:
本实施例中,首先,管理员可以在控制台设置手机银行、企业网银、个人网银三条业务线,为其中各业务线开启镜像,并设置相应主链路为老风控系统。协调模块主动拉取最新的配置信息(路由、逻辑等),即预设业务配置信息,将处理这3条业务线的路由和逻辑注入到主链路模块和从链路模块的lua代码中。此时主链路模块中(手机银行、企业网银、个人网银风控业务都将路由到老风控系统),从链路模块中(手机银行、企业网银、个人网银镜像请求都将路由到新风控系统),主链路针对业务线的响应结果会被用于返回给上游业务系统。相应的,分析模块在采集到主链路和从链路针对风控业务的响结果应后,会进行比对,对不一致的风控响应结果输出到文件中,由业务人员和技术人员查看比对文件,分析不一致的原因并优化和修复。
进一步的,如图3所示,当在并行期完成了手机银行业务新老风控的比对和调优后,管理员可以在控制台调整手机银行设置(关闭镜像,主链路设置为新风控系统)。协调模块感知到风控系统的变更,会拉取新的配置信息,之后关闭手机银行请求的镜像并将手机银行的路由和逻辑更新到主链路模块和从链路模块的lua代码块中,各链路模块重新装载。此时主链路模块中变更为(企业网银、个人网银风控业务路由到老风控系统,手机银行风控业务路由到新风控系统),从链路模块中变更为(企业网银、个人网银镜像请求都将路由到新风控系统)。这样一来,本实施例中保障了旧风控系统和新风控系统在并行期的效果校验,也顺利完成了手机银行风控业务(风控系统)的切换,上游业务系统对此完全无感。
由此可见,本申请中对链路的控制细化到业务线颗粒度,并且可以主动感知配置变更生成lua代码片段并以热加载的方式实现链路切换在线实时生效,上游业务系统无感。并且本申请拆分两个链路模块并通过控制各自独立的进程处理主链路和从链路,实现进程间隔离,规避了链路间的性能影响。
如图4所示,本申请实施例公开了一种热切换装置,包括:
链路设置模块11,用于为当前业务线开启镜像,以将旧风控系统设置为目标主链路,并将新风控系统设置为目标从链路;
风控业务响应模块12,用于利用所述主链路处理所述当前业务线对应的风控业务以得到相应的第一响应结果,将所述第一响应结果返回至相应的上游业务系统,并采集所述从链路针对所述风控业务的第二响应结果;
风控系统调整模块13,用于通过预设指令接口获取工作人员基于所述第一响应结果和所述第二响应结果对所述新风控系统下发的变更指令,并基于所述变更指令对所述新风口系统进行调整,以便利用相应的调整后风控系统处理所述当前业务线对应的风控业务。
由此可见,本申请可以采用镜像的方式,对旧风控系统和新风控系统的链路做到进程隔离,可以在保证业务不中断的前提下,实现风控系统的切换,保证业务的稳定。
在一种具体的实施例中,所述链路设置模块11,可以包括:
链路设置单元,用于为当前业务线开启镜像,以将旧风控系统和新风控系统分别设置为初始主链路和初始从链路;
链路配置单元,用于基于预设脚本语言将与所述当前业务线对应的第一预设业务配置信息注入所述初始主链路和所述初始从链路,得到目标主链路和目标从链路。
在一种具体的实施例中,所述装置还可以包括:
结果筛选单元,用于针对所述当前业务线对应的所述风控业务,从所述第一响应结果和所述第二响应结果中筛选不一致的异常响应结果;
结果展示单元,用于通过预设人机交互接口展示所述异常响应结果,以便工作人员基于所述异常响应结果对所述新风控系统进行调整,得到调整后风控系统。
在一种具体的实施例中,所述风控系统调整模块13,可以包括:
指令获取单元,用于通过预设指令接口获取工作人员基于所述异常响应结果对所述新风控系统下发的变更指令;
系统调整单元,用于基于所述变更指令对所述新风控系统进行调整,得到调整后风控系统,以便利用所述调整后风控系统处理所述当前业务线对应的风控业务。
在一种具体的实施例中,所述风控系统调整模块13,可以包括:
新链路设置子模块,用于针对所述当前业务线,利用所述调整后风控系统设置新目标主链路;
业务处理单元,用于利用所述新目标主链路处理所述当前业务线对应的风控业务。
在另一种具体的实施例中,所述新链路设置子模块,可以包括:
新链路设置单元,用于将所述调整后风控系统设置为与所述当前业务线对应的新主链路
新链路配置单元,用于基于预设脚本语言将与所述当前业务线对应的第二预设业务配置信息注入所述新主链路,以得到所述新目标主链路。
进一步的,本申请实施例还公开了一种电子设备,图5是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图5为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的热切换方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的热切换方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的热切换方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的技术方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
- 一种电磁继电器的壳体结构和电磁继电器
- 电磁继电器和电磁继电器单元