CN117873733B - 面向多场景的微服务切换运行控制方法和系统 - Google Patents
面向多场景的微服务切换运行控制方法和系统 Download PDFInfo
- Publication number
- CN117873733B CN117873733B CN202410268472.9A CN202410268472A CN117873733B CN 117873733 B CN117873733 B CN 117873733B CN 202410268472 A CN202410268472 A CN 202410268472A CN 117873733 B CN117873733 B CN 117873733B
- Authority
- CN
- China
- Prior art keywords
- micro
- service
- application program
- user side
- application programs
- 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
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000012544 monitoring process Methods 0.000 claims abstract description 18
- 238000003032 molecular docking Methods 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 8
- 210000001503 joint Anatomy 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及微服务处理的技术领域,提供了面向多场景的微服务切换运行控制方法和系统,对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志,以此得到微服务执行历史记录,并将所有应用程序划分为若干应用程序集群;基于用户端的微服务需求信息,选择与用户端匹配的应用程序集群以此对接至用户端;基于选择的应用程序集群的实时运行状态,生成相应的应用程序队列,以此向用户端加载相应的微服务线程;基于用户端当前加载的微服务线程的执行状态信息,判断是否需要切换对用户端加载的微服务线程,便于快速利用应用程序队列的其他应用程序继续提供微服务,保证对用户端的微服务稳定连续切换和提高用户端的运行可靠性和效率。
Description
技术领域
本发明涉及微服务处理的技术领域,特别涉及面向多场景的微服务切换运行控制方法和系统。
背景技术
微服务是指能够进行独立运行的小型服务,其能够专门对特定的数据或子任务进行处理。微服务具有可加载特点,用户端在进行不同数据或子任务处理过程中能够随时调用相应的微服务来完成相应的进程。但是微服务的调用具有指向性,即当用户端调用相应微服务后,若微服务在运行过程中发生故障,用户端也无法切换调用其他微服务,这样会降低微服务对不同场景的适用性,也无法保证用户端在整个数据或子任务处理过程中能够连续稳定运行,降低了用户端的运行可靠性和效率。
发明内容
针对现有技术存在的缺陷,本发明提供了面向多场景的微服务切换运行控制方法和系统,对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志,以此得到微服务执行历史记录,并将所有应用程序划分为若干应用程序集群;基于用户端的微服务需求信息,选择与用户端匹配的应用程序集群以此对接至用户端,使得应用程序集群能够为用户端提供合适的微服务;基于选择的应用程序集群的实时运行状态,生成相应的应用程序队列,以此向用户端加载相应的微服务线程;基于用户端当前加载的微服务线程的执行状态信息,判断是否需要切换对用户端加载的微服务线程,便于快速利用应用程序队列的其他应用程序继续提供微服务,保证对用户端的微服务稳定连续切换和提高用户端的运行可靠性和效率。
本发明提供面向多场景的微服务切换运行控制方法,包括如下步骤:
步骤S1,对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对所述工作日志进行分析,得到所述应用程序的微服务执行历史记录;基于所述微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理;
步骤S2,对请求接入所述服务端平台的用户端进行识别,得到所述用户端的微服务需求信息;基于所述微服务需求信息,选择与所述用户端匹配的应用程序集群,并将选择的应用程序集群对接至所述用户端;
步骤S3,基于所述选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于所述应用程序队列,向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行状态信息;
步骤S4,基于所述执行状态信息,判断是否需要切换对所述用户端加载的微服务线程;当需要切换对所述用户端加载的微服务线程,则基于所述应用程序队列,生成另一微服务线程并重新加载至所述用户端。
在本申请公开的一个实施例中,在所述步骤S1中,对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对所述工作日志进行分析,得到所述应用程序的微服务执行历史记录;基于所述微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理,包括:
对服务端平台的应用程序运行记录进行分析,得到所述服务端平台内部所有应用程序各自的启动拦截记录;基于所述启动拦截记录,判断所述应用程序是否处于安全运行状态;
对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志;对所述工作任务运算日志包含的微服务调用指令进行识别,得到所述应用程序在历史运行过程中调用的微服务类型信息;基于所述微服务类型信息,将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,并对每个应用程序集群进行允许调用微服务类型信息的标识处理。
在本申请公开的一个实施例中,在所述步骤S2中,对请求接入所述服务端平台的用户端进行识别,得到所述用户端的微服务需求信息;基于所述微服务需求信息,选择与所述用户端匹配的应用程序集群,并将选择的应用程序集群对接至所述用户端,包括:
对请求接入所述服务端平台的用户端进行识别,得到所述用户端当前需要处理的任务包含的所有任务进程,再确定所有任务进程在执行过程中的微服务需求信息;将所述微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与所述用户端匹配的应用程序集群,并基于所述用户端与所述服务端平台的通信通道,将选择的应用程序集群对接至所述用户端。
在本申请公开的一个实施例中,在所述步骤S3中,基于所述选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于所述应用程序队列,向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行状态信息,包括:
获取所述选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列;
从所述应用程序队列选择位于第一位置的应用程序后,基于所述位于第一位置的应用程序向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行数据吞吐量,以此作为所述执行状态信息。
在本申请公开的一个实施例中,在所述步骤S4中,基于所述执行状态信息,判断是否需要切换对所述用户端加载的微服务线程;当需要切换对所述用户端加载的微服务线程,则基于所述应用程序队列,生成另一微服务线程并重新加载至所述用户端,包括:
将所述执行状态信息包含的所述用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,若所述执行数据吞吐量小于预设数据吞吐量阈值,则判断需要切换对所述用户端加载的微服务线程;否则,判断不需要切换对所述用户端加载的微服务线程;
当需要切换对所述用户端加载的微服务线程,则触发所述应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将所述用户端当前加载的微服务线程生成的微服务结果数据转移至所述另一微服务线程,再将所述另一微服务线程加载至所述用户端。
本发明还提供面向多场景的微服务切换运行控制系统,包括:
应用程序识别与区分模块,用于对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对所述工作日志进行分析,得到所述应用程序的微服务执行历史记录;基于所述微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理;
微服务需求确定模块,用于对请求接入所述服务端平台的用户端进行识别,得到所述用户端的微服务需求信息;
应用程序集群选择模块,用于基于所述微服务需求信息,选择与所述用户端匹配的应用程序集群,并将选择的应用程序集群对接至所述用户端;
微服务加载模块,用于基于所述选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于所述应用程序队列,向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行状态信息;
微服务切换控制模块,用于基于所述执行状态信息,判断是否需要切换对所述用户端加载的微服务线程;当需要切换对所述用户端加载的微服务线程,则基于所述应用程序队列,生成另一微服务线程并重新加载至所述用户端。
在本申请公开的一个实施例中,所述应用程序识别与区分模块,用于对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对所述工作日志进行分析,得到所述应用程序的微服务执行历史记录;基于所述微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理,包括:
对服务端平台的应用程序运行记录进行分析,得到所述服务端平台内部所有应用程序各自的启动拦截记录;基于所述启动拦截记录,判断所述应用程序是否处于安全运行状态;
对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志;对所述工作任务运算日志包含的微服务调用指令进行识别,得到所述应用程序在历史运行过程中调用的微服务类型信息;基于所述微服务类型信息,将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,并对每个应用程序集群进行允许调用微服务类型信息的标识处理。
在本申请公开的一个实施例中,所述微服务需求确定模块,用于对请求接入所述服务端平台的用户端进行识别,得到所述用户端的微服务需求信息,包括:
对请求接入所述服务端平台的用户端进行识别,得到所述用户端当前需要处理的任务包含的所有任务进程,再确定所有任务进程在执行过程中的微服务需求信息;
所述应用程序集群选择模块,用于基于所述微服务需求信息,选择与所述用户端匹配的应用程序集群,并将选择的应用程序集群对接至所述用户端,包括:
将所述微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与所述用户端匹配的应用程序集群,并基于所述用户端与所述服务端平台的通信通道,将选择的应用程序集群对接至所述用户端。
在本申请公开的一个实施例中,所述微服务加载模块,用于基于所述选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于所述应用程序队列,向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行状态信息,包括:
获取所述选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列;
从所述应用程序队列选择位于第一位置的应用程序后,基于所述位于第一位置的应用程序向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行数据吞吐量,以此作为所述执行状态信息。
在本申请公开的一个实施例中,所述微服务切换控制模块,用于基于所述执行状态信息,判断是否需要切换对所述用户端加载的微服务线程;当需要切换对所述用户端加载的微服务线程,则基于所述应用程序队列,生成另一微服务线程并重新加载至所述用户端,包括:
将所述执行状态信息包含的所述用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,若所述执行数据吞吐量小于预设数据吞吐量阈值,则判断需要切换对所述用户端加载的微服务线程;否则,判断不需要切换对所述用户端加载的微服务线程;
当需要切换对所述用户端加载的微服务线程,则触发所述应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将所述用户端当前加载的微服务线程生成的微服务结果数据转移至所述另一微服务线程,再将所述另一微服务线程加载至所述用户端。
相比于现有技术,该面向多场景的微服务切换运行控制方法和系统对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志,以此得到微服务执行历史记录,并将所有应用程序划分为若干应用程序集群;基于用户端的微服务需求信息,选择与用户端匹配的应用程序集群以此对接至用户端,使得应用程序集群能够为用户端提供合适的微服务;基于选择的应用程序集群的实时运行状态,生成相应的应用程序队列,以此向用户端加载相应的微服务线程;基于用户端当前加载的微服务线程的执行状态信息,判断是否需要切换对用户端加载的微服务线程,便于快速利用应用程序队列的其他应用程序继续提供微服务,保证对用户端的微服务稳定连续切换和提高用户端的运行可靠性和效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的面向多场景的微服务切换运行控制方法的流程示意图;
图2为本发明提供的面向多场景的微服务切换运行控制系统的框架示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参阅图1,为本发明实施例提供的面向多场景的微服务切换运行控制方法的流程示意图。该面向多场景的微服务切换运行控制方法包括:
步骤S1,对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对该工作日志进行分析,得到该应用程序的微服务执行历史记录;基于该微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理;
步骤S2,对请求接入该服务端平台的用户端进行识别,得到该用户端的微服务需求信息;基于该微服务需求信息,选择与该用户端匹配的应用程序集群,并将选择的应用程序集群对接至该用户端;
步骤S3,基于该选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于该应用程序队列,向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行状态信息;
步骤S4,基于该执行状态信息,判断是否需要切换对该用户端加载的微服务线程;当需要切换对该用户端加载的微服务线程,则基于该应用程序队列,生成另一微服务线程并重新加载至该用户端。
该面向多场景的微服务切换运行控制方法对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志,以此得到微服务执行历史记录,并将所有应用程序划分为若干应用程序集群;基于用户端的微服务需求信息,选择与用户端匹配的应用程序集群以此对接至用户端,使得应用程序集群能够为用户端提供合适的微服务;基于选择的应用程序集群的实时运行状态,生成相应的应用程序队列,以此向用户端加载相应的微服务线程;基于用户端当前加载的微服务线程的执行状态信息,判断是否需要切换对用户端加载的微服务线程,便于快速利用应用程序队列的其他应用程序继续提供微服务,保证对用户端的微服务稳定连续切换和提高用户端的运行可靠性和效率。
优选地,在该步骤S1中,对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对该工作日志进行分析,得到该应用程序的微服务执行历史记录;基于该微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理,包括:
对服务端平台的应用程序运行记录进行分析,得到该服务端平台内部所有应用程序各自的启动拦截记录;基于该启动拦截记录,判断该应用程序是否处于安全运行状态;
对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志;对该工作任务运算日志包含的微服务调用指令进行识别,得到该应用程序在历史运行过程中调用的微服务类型信息;基于该微服务类型信息,将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,并对每个应用程序集群进行允许调用微服务类型信息的标识处理。
在上述技术方案中,对服务端平台的应用程序运行记录进行分析,得到该服务端平台内部所有应用程序各自的启动拦截记录,该启动拦截记录包括应用程序在启动后拦截的外来攻击次数,当该外来攻击次数大于预设次数阈值,则判断该应用程序不处于安全运行状态;当该外来攻击次数小于或等于预设次数阈值,则判断该应用程序处于安全运行状态,这样能够保证只有处于安全运行状态的应用程序才能允许提供微服务。再对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志,这样能够准确全面得到该应用程序在历史运行过程中调用的微服务类型信息,从而将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,保证后续能够为用户端提供准确可靠的微服务。
优选地,在该步骤S2中,对请求接入该服务端平台的用户端进行识别,得到该用户端的微服务需求信息;基于该微服务需求信息,选择与该用户端匹配的应用程序集群,并将选择的应用程序集群对接至该用户端,包括:
对请求接入该服务端平台的用户端进行识别,得到该用户端当前需要处理的任务包含的所有任务进程,再确定所有任务进程在执行过程中的微服务需求信息;将该微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与该用户端匹配的应用程序集群,并基于该用户端与该服务端平台的通信通道,将选择的应用程序集群对接至该用户端。
在上述技术方案中,对请求接入该服务端平台的用户端进行识别,得到该用户端当前需要处理的任务包含的所有任务进程,进而确定所有任务进程在执行过程中的微服务需求信息,这样能够为后续对用户端选择合适的微服务提供可靠的依据。还将所述微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与所述用户端匹配的应用程序集群,并基于该用户端与该服务端平台的通信通道,将选择的应用程序集群对接至该用户端,从而使得用户端能够及时获得相应的微服务。
优选地,在该步骤S3中,基于该选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于该应用程序队列,向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行状态信息,包括:
获取该选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列;
从该应用程序队列选择位于第一位置的应用程序后,基于该位于第一位置的应用程序向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行数据吞吐量,以此作为该执行状态信息。
在上述技术方案中,获取该选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列,这样该应用程序队列中位置越靠前的应用程序能够提供的微服务的质量越好。再从该应用程序队列选择位于第一位置的应用程序后,基于该位于第一位置的应用程序向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行数据吞吐量,在保证为用户端提供良好微服务的同时对用户端当前接收的微服务质量进行定量识别。
优选地,在该步骤S4中,基于该执行状态信息,判断是否需要切换对该用户端加载的微服务线程;当需要切换对该用户端加载的微服务线程,则基于该应用程序队列,生成另一微服务线程并重新加载至该用户端,包括:
将该执行状态信息包含的该用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,若该执行数据吞吐量小于预设数据吞吐量阈值,则判断需要切换对该用户端加载的微服务线程;否则,判断不需要切换对该用户端加载的微服务线程;
当需要切换对该用户端加载的微服务线程,则触发该应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将该用户端当前加载的微服务线程生成的微服务结果数据转移至该另一微服务线程,再将该另一微服务线程加载至该用户端。
在上述技术方案中,将该执行状态信息包含的该用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,能够准确识别该用户端当前接收的微服务能否正常进行数据处理。当不需要切换对该用户端加载的微服务线程,则继续保持该用户端当前接收到的微服务的工作状态不变。当需要切换对该用户端加载的微服务线程,则触发该应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将该用户端当前加载的微服务线程生成的微服务结果数据转移至该另一微服务线程,再将该另一微服务线程加载至该用户端,这样能够保证该用户端继续获得匹配的微服务进行数据处理。
参阅图2,为本发明实施例提供的面向多场景的微服务切换运行控制系统的框架示意图。该面向多场景的微服务切换运行控制系统包括:
应用程序识别与区分模块,用于对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对该工作日志进行分析,得到该应用程序的微服务执行历史记录;基于该微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理;
微服务需求确定模块,用于对请求接入该服务端平台的用户端进行识别,得到该用户端的微服务需求信息;
应用程序集群选择模块,用于基于该微服务需求信息,选择与该用户端匹配的应用程序集群,并将选择的应用程序集群对接至该用户端;
微服务加载模块,用于基于该选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于该应用程序队列,向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行状态信息;
微服务切换控制模块,用于基于该执行状态信息,判断是否需要切换对该用户端加载的微服务线程;当需要切换对该用户端加载的微服务线程,则基于该应用程序队列,生成另一微服务线程并重新加载至该用户端。
该面向多场景的微服务切换运行控制系统对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志,以此得到微服务执行历史记录,并将所有应用程序划分为若干应用程序集群;基于用户端的微服务需求信息,选择与用户端匹配的应用程序集群以此对接至用户端,使得应用程序集群能够为用户端提供合适的微服务;基于选择的应用程序集群的实时运行状态,生成相应的应用程序队列,以此向用户端加载相应的微服务线程;基于用户端当前加载的微服务线程的执行状态信息,判断是否需要切换对用户端加载的微服务线程,便于快速利用应用程序队列的其他应用程序继续提供微服务,保证对用户端的微服务稳定连续切换和提高用户端的运行可靠性和效率。
优选地,该应用程序识别与区分模块,用于对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对该工作日志进行分析,得到该应用程序的微服务执行历史记录;基于该微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理,包括:
对服务端平台的应用程序运行记录进行分析,得到该服务端平台内部所有应用程序各自的启动拦截记录;基于该启动拦截记录,判断该应用程序是否处于安全运行状态;
对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志;对该工作任务运算日志包含的微服务调用指令进行识别,得到该应用程序在历史运行过程中调用的微服务类型信息;基于该微服务类型信息,将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,并对每个应用程序集群进行允许调用微服务类型信息的标识处理。
在上述技术方案中,对服务端平台的应用程序运行记录进行分析,得到该服务端平台内部所有应用程序各自的启动拦截记录,该启动拦截记录包括应用程序在启动后拦截的外来攻击次数,当该外来攻击次数大于预设次数阈值,则判断该应用程序不处于安全运行状态;当该外来攻击次数小于或等于预设次数阈值,则判断该应用程序处于安全运行状态,这样能够保证只有处于安全运行状态的应用程序才能允许提供微服务。再对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志,这样能够准确全面得到该应用程序在历史运行过程中调用的微服务类型信息,从而将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,保证后续能够为用户端提供准确可靠的微服务。
优选地,该微服务需求确定模块,用于对请求接入该服务端平台的用户端进行识别,得到该用户端的微服务需求信息,包括:
对请求接入该服务端平台的用户端进行识别,得到该用户端当前需要处理的任务包含的所有任务进程,再确定所有任务进程在执行过程中的微服务需求信息;
该应用程序集群选择模块,用于基于该微服务需求信息,选择与该用户端匹配的应用程序集群,并将选择的应用程序集群对接至该用户端,包括:
将该微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与该用户端匹配的应用程序集群,并基于该用户端与该服务端平台的通信通道,将选择的应用程序集群对接至该用户端。
在上述技术方案中,对请求接入该服务端平台的用户端进行识别,得到该用户端当前需要处理的任务包含的所有任务进程,进而确定所有任务进程在执行过程中的微服务需求信息,这样能够为后续对用户端选择合适的微服务提供可靠的依据。还将所述微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与所述用户端匹配的应用程序集群,并基于该用户端与该服务端平台的通信通道,将选择的应用程序集群对接至该用户端,从而使得用户端能够及时获得相应的微服务。
优选地,该微服务加载模块,用于基于该选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于该应用程序队列,向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行状态信息,包括:
获取该选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列;
从该应用程序队列选择位于第一位置的应用程序后,基于该位于第一位置的应用程序向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行数据吞吐量,以此作为该执行状态信息。
在上述技术方案中,获取该选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列,这样该应用程序队列中位置越靠前的应用程序能够提供的微服务的质量越好。再从该应用程序队列选择位于第一位置的应用程序后,基于该位于第一位置的应用程序向该用户端加载相应的微服务线程,并获取该用户端当前加载的微服务线程的执行数据吞吐量,在保证为用户端提供良好微服务的同时对用户端当前接收的微服务质量进行定量识别。
优选地,该微服务切换控制模块,用于基于该执行状态信息,判断是否需要切换对该用户端加载的微服务线程;当需要切换对该用户端加载的微服务线程,则基于该应用程序队列,生成另一微服务线程并重新加载至该用户端,包括:
将该执行状态信息包含的该用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,若该执行数据吞吐量小于预设数据吞吐量阈值,则判断需要切换对该用户端加载的微服务线程;否则,判断不需要切换对该用户端加载的微服务线程;
当需要切换对该用户端加载的微服务线程,则触发该应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将该用户端当前加载的微服务线程生成的微服务结果数据转移至该另一微服务线程,再将该另一微服务线程加载至该用户端。
在上述技术方案中,将该执行状态信息包含的该用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,能够准确识别该用户端当前接收的微服务能否正常进行数据处理。当不需要切换对该用户端加载的微服务线程,则继续保持该用户端当前接收到的微服务的工作状态不变。当需要切换对该用户端加载的微服务线程,则触发该应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将该用户端当前加载的微服务线程生成的微服务结果数据转移至该另一微服务线程,再将该另一微服务线程加载至该用户端,这样能够保证该用户端继续获得匹配的微服务进行数据处理。
从上述实施例的内容可知,该面向多场景的微服务切换运行控制方法和系统对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志,以此得到微服务执行历史记录,并将所有应用程序划分为若干应用程序集群;基于用户端的微服务需求信息,选择与用户端匹配的应用程序集群以此对接至用户端,使得应用程序集群能够为用户端提供合适的微服务;基于选择的应用程序集群的实时运行状态,生成相应的应用程序队列,以此向用户端加载相应的微服务线程;基于用户端当前加载的微服务线程的执行状态信息,判断是否需要切换对用户端加载的微服务线程,便于快速利用应用程序队列的其他应用程序继续提供微服务,保证对用户端的微服务稳定连续切换和提高用户端的运行可靠性和效率。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.面向多场景的微服务切换运行控制方法,其特征在于,其包括如下步骤:
步骤S1,对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对所述工作日志进行分析,得到所述应用程序的微服务执行历史记录;基于所述微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理,包括对服务端平台的应用程序运行记录进行分析,得到所述服务端平台内部所有应用程序各自的启动拦截记录;基于所述启动拦截记录,判断所述应用程序是否处于安全运行状态;对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志;对所述工作任务运算日志包含的微服务调用指令进行识别,得到所述应用程序在历史运行过程中调用的微服务类型信息;基于所述微服务类型信息,将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,并对每个应用程序集群进行允许调用微服务类型信息的标识处理;
步骤S2,对请求接入所述服务端平台的用户端进行识别,得到所述用户端的微服务需求信息;基于所述微服务需求信息,选择与所述用户端匹配的应用程序集群,并将选择的应用程序集群对接至所述用户端;
步骤S3,基于所述选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于所述应用程序队列,向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行状态信息,包括获取所述选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列;从所述应用程序队列选择位于第一位置的应用程序后,基于所述位于第一位置的应用程序向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行数据吞吐量,以此作为所述执行状态信息;
步骤S4,基于所述执行状态信息,判断是否需要切换对所述用户端加载的微服务线程;当需要切换对所述用户端加载的微服务线程,则基于所述应用程序队列,生成另一微服务线程并重新加载至所述用户端。
2.如权利要求1所述的面向多场景的微服务切换运行控制方法,其特征在于:
所述步骤S2包括:
对请求接入所述服务端平台的用户端进行识别,得到所述用户端当前需要处理的任务包含的所有任务进程,再确定所有任务进程在执行过程中的微服务需求信息;将所述微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与所述用户端匹配的应用程序集群,并基于所述用户端与所述服务端平台的通信通道,将选择的应用程序集群对接至所述用户端。
3.如权利要求1所述的面向多场景的微服务切换运行控制方法,其特征在于:
所述步骤S4包括:
将所述执行状态信息包含的所述用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,若所述执行数据吞吐量小于预设数据吞吐量阈值,则判断需要切换对所述用户端加载的微服务线程;否则,判断不需要切换对所述用户端加载的微服务线程;
当需要切换对所述用户端加载的微服务线程,则触发所述应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将所述用户端当前加载的微服务线程生成的微服务结果数据转移至所述另一微服务线程,再将所述另一微服务线程加载至所述用户端。
4.面向多场景的微服务切换运行控制系统,其特征在于,包括:
应用程序识别与区分模块,用于对服务端平台内部所有应用程序进行监听,得到所有应用程序各自的工作日志;对所述工作日志进行分析,得到所述应用程序的微服务执行历史记录;基于所述微服务执行历史记录,将所有应用程序划分为若干应用程序集群,并对每个应用程序集群进行标识处理,包括对服务端平台的应用程序运行记录进行分析,得到所述服务端平台内部所有应用程序各自的启动拦截记录;基于所述启动拦截记录,判断所述应用程序是否处于安全运行状态;对处于安全运行状态的所有应用程序进行监听,得到所有应用程序各自的工作任务运算日志;对所述工作任务运算日志包含的微服务调用指令进行识别,得到所述应用程序在历史运行过程中调用的微服务类型信息;基于所述微服务类型信息,将能够调用相同类型微服务的所有应用程序划分为同一应用程序集群,并对每个应用程序集群进行允许调用微服务类型信息的标识处理;
微服务需求确定模块,用于对请求接入所述服务端平台的用户端进行识别,得到所述用户端的微服务需求信息;
应用程序集群选择模块,用于基于所述微服务需求信息,选择与所述用户端匹配的应用程序集群,并将选择的应用程序集群对接至所述用户端;
微服务加载模块,用于基于所述选择的应用程序集群的实时运行状态,生成相应的应用程序队列;基于所述应用程序队列,向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行状态信息,包括获取所述选择的应用程序集群下属所有应用程序各自的实时待处理任务数据量,基于所有应用程序的实时待处理任务数据量由小到大的顺序,将所有应用程序排列成相应的应用程序队列;从所述应用程序队列选择位于第一位置的应用程序后,基于所述位于第一位置的应用程序向所述用户端加载相应的微服务线程,并获取所述用户端当前加载的微服务线程的执行数据吞吐量,以此作为所述执行状态信息;
微服务切换控制模块,用于基于所述执行状态信息,判断是否需要切换对所述用户端加载的微服务线程;当需要切换对所述用户端加载的微服务线程,则基于所述应用程序队列,生成另一微服务线程并重新加载至所述用户端。
5.如权利要求4所述的面向多场景的微服务切换运行控制系统,其特征在于:
所述微服务需求确定模块包括:
对请求接入所述服务端平台的用户端进行识别,得到所述用户端当前需要处理的任务包含的所有任务进程,再确定所有任务进程在执行过程中的微服务需求信息;
所述应用程序集群选择模块包括:
将所述微服务需求信息与所有应用程序集群各自允许调用的微服务类型信息进行对比,选择与所述用户端匹配的应用程序集群,并基于所述用户端与所述服务端平台的通信通道,将选择的应用程序集群对接至所述用户端。
6.如权利要求4所述的面向多场景的微服务切换运行控制系统,其特征在于:
所述微服务切换控制模块包括:
将所述执行状态信息包含的所述用户端当前加载的微服务线程的执行数据吞吐量与预设数据吞吐量阈值进行对比,若所述执行数据吞吐量小于预设数据吞吐量阈值,则判断需要切换对所述用户端加载的微服务线程;否则,判断不需要切换对所述用户端加载的微服务线程;
当需要切换对所述用户端加载的微服务线程,则触发所述应用程序队列中位于下一位置的应用程序生成另一微服务线程,并将所述用户端当前加载的微服务线程生成的微服务结果数据转移至所述另一微服务线程,再将所述另一微服务线程加载至所述用户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410268472.9A CN117873733B (zh) | 2024-03-11 | 2024-03-11 | 面向多场景的微服务切换运行控制方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410268472.9A CN117873733B (zh) | 2024-03-11 | 2024-03-11 | 面向多场景的微服务切换运行控制方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117873733A CN117873733A (zh) | 2024-04-12 |
CN117873733B true CN117873733B (zh) | 2024-05-17 |
Family
ID=90577656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410268472.9A Active CN117873733B (zh) | 2024-03-11 | 2024-03-11 | 面向多场景的微服务切换运行控制方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117873733B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110162414A (zh) * | 2019-02-01 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 基于微服务架构实现人工智能服务的方法及装置 |
CN112217847A (zh) * | 2019-07-11 | 2021-01-12 | 北京京东尚科信息技术有限公司 | 微服务平台及其实现方法、电子设备及存储介质 |
CN112416594A (zh) * | 2020-11-30 | 2021-02-26 | 四川长虹智能制造技术有限公司 | 一种微服务分配方法、电子设备和计算机存储介质 |
CN113342472A (zh) * | 2021-06-28 | 2021-09-03 | 平安消费金融有限公司 | 微服务集群创建方法、装置、电子设备及可读存储介质 |
CN113778985A (zh) * | 2021-08-19 | 2021-12-10 | 上海东普信息科技有限公司 | 微服务架构监控方法、装置、计算机设备和存储介质 |
CN113835969A (zh) * | 2021-09-30 | 2021-12-24 | 北京字跳网络技术有限公司 | 微服务监控方法、装置、设备以及存储介质 |
CN114003300A (zh) * | 2021-09-14 | 2022-02-01 | 武汉易久批信息技术有限公司 | 基于微服务的服务逻辑确定方法及系统 |
CN115567594A (zh) * | 2022-09-20 | 2023-01-03 | 平安科技(深圳)有限公司 | 微服务请求处理方法、装置、计算机设备及存储介质 |
CN116755891A (zh) * | 2023-08-21 | 2023-09-15 | 成都中科合迅科技有限公司 | 基于多线程的事件队列处理方法和系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104980371B (zh) * | 2015-06-09 | 2019-01-11 | 英业达科技有限公司 | 微服务器 |
US11057487B2 (en) * | 2019-05-17 | 2021-07-06 | Citrix Systems, Inc. | Systems and methods for recording metadata about microservices for requests to the microservices |
US20230185631A1 (en) * | 2021-12-14 | 2023-06-15 | Sap Se | Embedded capacity-computer module for microservice load balancing and distribution |
US12019502B2 (en) * | 2022-05-31 | 2024-06-25 | Dell Products L.P. | Microservices anomaly detection |
-
2024
- 2024-03-11 CN CN202410268472.9A patent/CN117873733B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110162414A (zh) * | 2019-02-01 | 2019-08-23 | 腾讯科技(深圳)有限公司 | 基于微服务架构实现人工智能服务的方法及装置 |
CN112217847A (zh) * | 2019-07-11 | 2021-01-12 | 北京京东尚科信息技术有限公司 | 微服务平台及其实现方法、电子设备及存储介质 |
CN112416594A (zh) * | 2020-11-30 | 2021-02-26 | 四川长虹智能制造技术有限公司 | 一种微服务分配方法、电子设备和计算机存储介质 |
CN113342472A (zh) * | 2021-06-28 | 2021-09-03 | 平安消费金融有限公司 | 微服务集群创建方法、装置、电子设备及可读存储介质 |
CN113778985A (zh) * | 2021-08-19 | 2021-12-10 | 上海东普信息科技有限公司 | 微服务架构监控方法、装置、计算机设备和存储介质 |
CN114003300A (zh) * | 2021-09-14 | 2022-02-01 | 武汉易久批信息技术有限公司 | 基于微服务的服务逻辑确定方法及系统 |
CN113835969A (zh) * | 2021-09-30 | 2021-12-24 | 北京字跳网络技术有限公司 | 微服务监控方法、装置、设备以及存储介质 |
CN115567594A (zh) * | 2022-09-20 | 2023-01-03 | 平安科技(深圳)有限公司 | 微服务请求处理方法、装置、计算机设备及存储介质 |
CN116755891A (zh) * | 2023-08-21 | 2023-09-15 | 成都中科合迅科技有限公司 | 基于多线程的事件队列处理方法和系统 |
Non-Patent Citations (3)
Title |
---|
"Implementation of Cluster Server Monitoring System Based on Microservice";Hongbin Wang;《2022 7th International Conference on Computer and Communication Systems (ICCCS)》;20220815;全文 * |
"微服务使能平台研究与实践";高伟;《网络安全和信息化》;20231005;全文 * |
基于微服务架构的统一应用开发平台;李春阳;刘迪;崔蔚;李晓珍;李春岐;;计算机系统应用;20170415(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117873733A (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297711B (zh) | 批量数据处理方法、装置、计算机设备及存储介质 | |
US7117244B2 (en) | Techniques for load distribution processing for call centers and other processing systems | |
CN110351357B (zh) | 服务器限流方法、装置、计算机设备以及存储介质 | |
EP3270287A1 (en) | Scheduling method and system for video analysis tasks | |
CN111818159B (zh) | 数据处理节点的管理方法、装置、设备及存储介质 | |
US7756971B2 (en) | Method and system for managing programs in data-processing system | |
CN113127160B (zh) | 任务调度方法、系统及设备 | |
CN108446172A (zh) | 数据调取方法、装置、计算机设备和存储介质 | |
CN110691118A (zh) | 一种微服务集群中的服务选择方法及装置 | |
CN111932099A (zh) | 营销业务管理系统及营销业务管理方法 | |
CN117873733B (zh) | 面向多场景的微服务切换运行控制方法和系统 | |
CN108255661A (zh) | 一种实现Hadoop集群监控的方法及系统 | |
CN112429607A (zh) | 电梯控制系统、方法、装置、计算机设备和存储介质 | |
US20090168092A1 (en) | Job management and scheduling method for network system | |
CN112379935A (zh) | Spark性能优化控制方法、装置、设备及存储介质 | |
CN113419842B (zh) | 一种基于JavaScript构建边缘计算微服务的方法、装置 | |
CN116257333A (zh) | 分布式任务调度方法、装置和分布式任务调度系统 | |
CN112818204B (zh) | 一种业务的处理方法、装置、设备及存储介质 | |
CN111064636B (zh) | 前置机连接的控制方法、装置、系统、计算机设备 | |
US20140047454A1 (en) | Load balancing in an sap system | |
CN115239450A (zh) | 财务数据处理方法、装置、计算机设备及存储介质 | |
US11792325B2 (en) | Predictive screen recording | |
CN111240857B (zh) | 一种远程服务调用系统及调用方法 | |
CN117478600B (zh) | 服务于高并发多中心业务中台的流量控制方法与系统 | |
CN114138438A (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 |