CN115221008A - 一种基于微服务模式的调度系统监控方法、设备及介质 - Google Patents
一种基于微服务模式的调度系统监控方法、设备及介质 Download PDFInfo
- Publication number
- CN115221008A CN115221008A CN202210882381.5A CN202210882381A CN115221008A CN 115221008 A CN115221008 A CN 115221008A CN 202210882381 A CN202210882381 A CN 202210882381A CN 115221008 A CN115221008 A CN 115221008A
- Authority
- CN
- China
- Prior art keywords
- scheduling
- task
- log
- server
- scheduling system
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种基于微服务模式的调度系统监控方法、设备及介质,方法包括:调度服务器确定预先构建的功能代码;在可视化界面中,确定待触发的类名与方法名;根据类名与方法名,生成调度任务,并确定通过触发器触发调度任务的执行频率;根据功能代码、调度任务以及执行频率,生成微服务模式的调度系统;通过调度系统向预设数据库发送心跳,以在可视化界面中,对调度服务器的运行状态进行监控;在调度系统的任务管理界面中,确定类名与方法名,并设置触发器,以对调度任务的运行状态进行监控;构建调度系统的日志接口,调用日志接口对调度任务的执行过程进行日志记录,以对调度任务的执行过程进行监控。能够对调度系统进行全周期监控。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种基于微服务模式的调度系统监控方法、设备及介质。
背景技术
随着Internet的发展以及用户的增加,出现了各种各样的行业,同时诞生出了越来越多的技术领域,如云计算、人工智能、大数据、物联网等。其中,每一个系统都需要或多或少的开发一些定时任务来处理某些事情,比如:定时计算,定时爬虫,定时同步数据,定时付款,定时发送邮件等。随着系统的不断完善,业务模块会变得越来越多,定时任务量也会越来越大。
目前,定时任务解决方案有很多,如Timer、ScheduledThreadPoolExecutor、quartz、xxl-job。但是,开发人员开发定时任务时,需要先学习某种技术,并根据业务场景来规定好其执行频率,不易于后期修改。随着任务的越来越多,在管理、监控方面比较困难,无法对任务进行统一管理,维护困难,无法实时监控任务、调度系统的状态,导致无法对调度系统进行全周期监控。
发明内容
本申请实施例提供一种基于微服务模式的调度系统监控方法、设备及介质,用于解决无法对调度系统进行全周期监控的问题。
本申请实施例采用下述技术方案:
一方面,本申请实施例提供了一种基于微服务模式的调度系统监控方法,该方法包括:调度服务器确定预先构建的功能代码;在可视化界面中,确定待触发的类名与方法名;根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
一个示例中,所述根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统之后,所述方法还包括:若所述调度任务为多个,则确定处于同一时间的调度任务;若所述处于同一时间的调度任务的数量大于预设阈值,则根据分配规则,将所述处于同一时间的部分调度任务分配到其他调度服务器;其中,所述调度服务器与所述其他调度服务器处于同一调度服务集群。
一个示例中,所述根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统,具体包括:将所述功能代码应用于开源的任务调度quartz框架;基于所述quartz框架,构建通用的定时任务job接口,并将所述触发器与所述调度任务进行绑定,以定时触发所述调度任务;在触发所述调度任务时,根据所述执行频率,在所述job接口内通过RPC的方式,调用所述类名对应类中的方法;生成所述微服务模式的调度系统。
一个示例中,所述在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控,具体包括:在预设周期内,通过所述调度系统向预设数据库发送心跳;在所述预设数据库中,判断是否接收到所述心跳;若否,则将所述调度系统在调度服务集群中剔出,在所述可视化界面中,标记所述调度服务器的运行状态为异常;若是,在所述可视化界面中,对所述调度服务器的运行状态进行展示。
一个示例中,,所述以通过所述触发器对所述调度任务的运行状态进行监控,具体包括:通过所述触发器,获取到所述调度任务的运行信息;根据所述调度服务器的运行状态,对所述运行信息进行分析,确定所述调度任务的运行状态。
一个示例中,所述根据所述调度服务器的运行状态,对所述运行信息进行分析,确定所述调度任务的运行状态,具体包括:判断所述调度服务器的运行状态是否异常;若是,则暂停所述调度任务;若否,则对所述运行信息进行分析,确定所述调度任务的运行状态。
一个示例中,所述若是,则暂停所述调度任务之后,所述方法还包括:获取所述调度系统的状态表;其中,所述状态表的字段包括ID、调度系统服务器IP、调度系统运行端口、是否运行、第一次注册时间、最后一次注册时间中的至少一种;根据所述状态表中的信息,确定所述调度系统的运行状态;若所述调度系统的运行状态异常,则暂停所述调度系统中的其他调度任务。
一个示例中,所述根据所述日志记录,对所述调度任务的执行过程进行监控,具体包括:将所述日志记录传入预先构建的日志表格中;其中,所述日志表格中的字段包括ID、日志信息、所述调度服务器IP、所述调度系统的运行端口、日志时间、日志级别中的至少一种;通过对所述日志表格中的数据进行分析,对所述调度任务的执行过程进行监控;所述执行过程包括任务触发、获取任务触发模式、任务开始执行、任务结束、任务出错中的至少一种;在所述调度任务的执行过程出现异常时,通过所述调度服务器IP定位到所述调度服务器。
另一方面,本申请实施例提供了一种基于微服务模式的调度系统监控设备,应用于调度服务器,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:确定预先构建的功能代码;在可视化界面中,确定待触发的类名与方法名;根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
另一方面,本申请实施例提供了一种基于微服务模式的调度系统监控非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:确定预先构建的功能代码;在可视化界面中,确定待触发的类名与方法名;根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
可以对调度系统进行全周期的监控,并管理所有的调度任务。监控主要包含两方面:调度任务的监控和调度服务器的监控。对于调度任务,提供管理及监控界面,实时了解任务的运行状态及运行所在的服务器,并对调度任务执行的整个过程进行详细划分,当调度任务出现问题可进行精准快速定位。对于调度服务器,提供监控界面,在服务器众多的情况下,可以清晰的查看哪些为调度服务器,并可直观的查看调度服务器的运行状态。当调度任务、服务器出现问题时,可快速的进行定位问题进行排查解决。实用性广,可以极大的降低管理、运维难度,提高交付效率。
附图说明
为了更清楚地说明本申请的技术方案,下面将结合附图来对本申请的部分实施例进行详细说明,附图中:
图1为本申请实施例提供的一种基于微服务模式的调度系统监控方法的流程示意图;
图2为本申请实施例提供的一种基于微服务模式的调度系统的示例图;
图3为本申请实施例提供的一种基于微服务模式的调度系统监控设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本申请的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面参照附图来对本申请的一些实施例进行详细说明。
图1为本申请实施例提供的一种基于微服务模式的调度系统监控方法的流程示意图。该方法可以应用于不同的业务场景,比如,适用于使用了定时任务的系统,尤其适用于像物联网、大数据等复杂业务系统中调度任务及服务器众多的场景。该流程可以由相应领域的计算设备(调度服务器)执行,流程中的某些输入参数或者中间结果允许人工干预调节,以帮助提高准确性。
需要说明的是,该调度服务器可以是单独的一台设备,可以是有多台设备组成的系统,即,分布式服务器,本申请对此不做具体限定。
图1中的流程可以包括以下步骤:
S102:调度服务器确定预先构建的功能代码。
其中,在构建微服务模式的调度系统时,需要多个功能模块进行组合,而功能代码是指实现多个功能模块所对应的代码。
S104:在可视化界面中,确定待触发的类名与方法名。
也就是说,开发人员需要在可视化界面中配置好要触发的类名与方法名。
S106:根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率。
也就是说,开发人员需要设置好执行频率。
S108:根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统。
在本申请的一些实施例中,首先将功能代码应用于开源的任务调度quartz框架。然后,基于quartz框架,构建通用的定时任务job接口,并将触发器与调度任务进行绑定,以定时触发调度任务。然后,在触发调度任务时,根据执行频率,在job接口内通过RPC的方式,调用类名对应类中的方法,从而通过上述操作,生成微服务模式的调度系统。
更直观地,本申请实施例还提供了一种基于微服务模式的调度系统的示例图。如图2所示。
在图2中,调度系统通过RPC请求,向A系统执行调度任务,以及通过通过RPC请求,向B系统执行调度任务,以及通过RPC请求,向C系统执行调度任务。比如。A系统为资金系统,B系统为物联网系统,C系统为银行系统。
在本申请的一些实施例中,若调度任务为多个,则确定处于同一时间的调度任务,若处于同一时间的调度任务的数量大于预设阈值,则根据分配规则,将处于同一时间的部分调度任务分配到其他调度服务器。其中,调度服务器与其他调度服务器处于同一调度服务集群。
其中,通过数据库锁技术,能够确保同一时间的同一调度任务只会在一台调度服务器上运行,不会重复执行,导致数据重复计算。
也就是说,当同一调度服务器的任务过多时,支持动态扩容,用户只需添加几台调度服务器,添加到调度服务集群中即可,无需进行多余配置,调度任务会被均匀的分散到各个调度服务器上。当调度服务器出现故障时,调度任务也可以动态的转移到其他调度系统。
即,调度系统默认即是集群,当有新的调度系统启动时会自动加入进来,当某个调度系统出现错误时,任务就会自动转移到其他系统中,确保任务正常运行。综上所述,从而支持高并发、高可用、动态扩容、故障转移等特性。
S110:在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控。
在本申请的一些实施例中,在预设周期内,通过调度系统向预设数据库发送心跳,然后在预设数据库中,判断是否接收到心跳。
若否,则将调度系统在调度服务集群中剔出,在可视化界面中,标记调度服务器的运行状态为异常;
若是,在可视化界面中,对调度服务器的运行状态进行展示。
即,对调度系统的整个运行过程进行日志记录,调度系统启动后,调度系统会定时发送心跳到数据库进行保活,这样可以通过可视化界面清晰的看出所有调度服务器的运行状态。开发、运维人员即可通过监控界面清晰的查看所有调度服务器的运行状态,并查看异常服务器的运行日志进行问题跟踪。
S112:在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止。
可知,提供调度任务管理、监控界面。开发人员无需学习调度任务技术,通过任务管理界面配置好开发好的类名、方法名,并设置好触发器即可,且触发器支持简单触发器和复杂触发器。管理、监控界面可以查看任务的实际运行状态、任务的运行日志,并支持任务的动态启停。可以极大提高开发人员的效率,降低运维的难度。
在本申请的一些实施例中,在对调度任务的运行状态进行监控时,通过触发器,获取到调度任务的运行信息,然后根据调度服务器的运行状态,对运行信息进行分析,确定调度任务的运行状态。
进一步地,在确定调度任务的运行状态时,判断调度服务器的运行状态是否异常。若是,则暂停调度任务,若否,则对运行信息进行分析,确定调度任务的运行状态。
其中,调度系统可通过RPC+反射的技术对任务进行触发运行,开发人员无需花费时间去学习调度任务技术,提高开发效率。任务的状态会结合调度服务器的运行状态进行联合判断,正确展示任务的实际运行状态;支持任务的动态启停,无需重启调度系统。
进一步地,在暂停调度任务之后,获取调度系统的状态表。其中,状态表的字段包括ID、调度系统服务器IP、调度系统运行端口、是否运行、第一次注册时间、最后一次注册时间中的至少一种。
然后,根据状态表中的信息,确定调度系统的运行状态。若调度系统的运行状态异常,则暂停调度系统中的其他调度任务。
也就是说,在调度服务器异常时,还会及时确定调度系统的运行状态,从而能够及时暂停调度系统中的其他调度任务。
更直观地,比如,调度系统的状态表,如表1所示。
表1:
S114:构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
在本申请的一些实施例中,将日志记录传入预先构建的日志表格中;其中,日志表格中的字段包括ID、日志信息、调度服务器IP、调度系统的运行端口、日志时间、日志级别中的至少一种;
更直观地,比如,日志表格,如表2所示。
表2:
然后,通过对日志表格中的数据进行分析,对调度任务的执行过程进行监控;执行过程包括任务触发、获取任务触发模式、任务开始执行、任务结束、任务出错中的至少一种;
在调度任务的执行过程出现异常时,通过调度服务器IP定位到调度服务器。
也就是说,能够对任务执行过程进行详细的监控。把任务的执行过程进行详细的划分并进行日志记录:任务触发、获取任务触发模式、任务开始执行、任务结束、任务出错等。并提供日志扩展接口,如果一个定时任务特别复杂,可调用日志接口再对任务的处理步骤进行详细记录。日志还支持记录任务运行的调度服务器IP,任务一旦发生错误,可以快速的进行定位处理。
需要说明的是,虽然本申请实施例是参照图1来对步骤S102至步骤S114依次进行介绍说明的,但这并不代表步骤S102至步骤S114必须按照严格的先后顺序执行。本申请实施例之所以按照图1中所示的顺序对步骤S102至步骤S114依次进行介绍说明,是为了方便本领域技术人员理解本申请实施例的技术方案。换句话说,在本申请实施例中,步骤S102至步骤S114之间的先后顺序可以根据实际需要进行适当调整。
通过图1的方法,可以对调度系统进行全周期的监控,并管理所有的调度任务。监控主要包含两方面:调度任务的监控和调度服务器的监控。对于调度任务,提供管理及监控界面,实时了解任务的运行状态及运行所在的服务器,并对调度任务执行的整个过程进行详细划分,当调度任务出现问题可进行精准快速定位。对于调度服务器,提供监控界面,在服务器众多的情况下,可以清晰的查看哪些为调度服务器,并可直观的查看调度服务器的运行状态。当调度任务、服务器出现问题时,可快速的进行定位问题进行排查解决。实用性广,可以极大的降低管理、运维难度,提高交付效率。
基于同样的思路,本申请的一些实施例还提供了上述方法对应的设备和非易失性计算机存储介质。
图3为本申请实施例提供的一种基于微服务模式的调度系统监控设备的结构示意图,应用于调度服务器,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
确定预先构建的功能代码;
在可视化界面中,确定待触发的类名与方法名;
根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;
根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;
在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;
在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;
构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
本申请的一些实施例提供的一种基于微服务模式的调度系统监控非易失性计算机存储介质,存储有计算机可执行指令,应用于调度服务器,所述计算机可执行指令设置为:
确定预先构建的功能代码;
在可视化界面中,确定待触发的类名与方法名;
根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;
根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;
在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;
在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;
构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请技术原理之内所作的任何修改、等同替换、改进等,均应落入本申请的保护范围之内。
Claims (10)
1.一种基于微服务模式的调度系统监控方法,其特征在于,所述方法包括:
调度服务器确定预先构建的功能代码;
在可视化界面中,确定待触发的类名与方法名;
根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;
根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;
在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;
在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;
构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
2.根据权利要求1所述的方法,其特征在于,所述根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统之后,所述方法还包括:
若所述调度任务为多个,则确定处于同一时间的调度任务;
若所述处于同一时间的调度任务的数量大于预设阈值,则根据分配规则,将所述处于同一时间的部分调度任务分配到其他调度服务器;其中,所述调度服务器与所述其他调度服务器处于同一调度服务集群。
3.根据权利要求1所述的方法,其特征在于,所述根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统,具体包括:
将所述功能代码应用于开源的任务调度quartz框架;
基于所述quartz框架,构建通用的定时任务job接口,并将所述触发器与所述调度任务进行绑定,以定时触发所述调度任务;
在触发所述调度任务时,根据所述执行频率,在所述job接口内通过RPC的方式,调用所述类名对应类中的方法;
生成所述微服务模式的调度系统。
4.根据权利要求1所述的方法,其特征在于,所述在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控,具体包括:
在预设周期内,通过所述调度系统向预设数据库发送心跳;
在所述预设数据库中,判断是否接收到所述心跳;
若否,则将所述调度系统在调度服务集群中剔出,在所述可视化界面中,标记所述调度服务器的运行状态为异常;
若是,在所述可视化界面中,对所述调度服务器的运行状态进行展示。
5.根据权利要求4所述的方法,其特征在于,所述以通过所述触发器对所述调度任务的运行状态进行监控,具体包括:
通过所述触发器,获取到所述调度任务的运行信息;
根据所述调度服务器的运行状态,对所述运行信息进行分析,确定所述调度任务的运行状态。
6.根据权利要求5所述的方法,其特征在于,所述根据所述调度服务器的运行状态,对所述运行信息进行分析,确定所述调度任务的运行状态,具体包括:
判断所述调度服务器的运行状态是否异常;
若是,则暂停所述调度任务;
若否,则对所述运行信息进行分析,确定所述调度任务的运行状态。
7.根据权利要求5所述的方法,其特征在于,所述若是,则暂停所述调度任务之后,所述方法还包括:
获取所述调度系统的状态表;其中,所述状态表的字段包括ID、调度系统服务器IP、调度系统运行端口、是否运行、第一次注册时间、最后一次注册时间中的至少一种;
根据所述状态表中的信息,确定所述调度系统的运行状态;
若所述调度系统的运行状态异常,则暂停所述调度系统中的其他调度任务。
8.根据权利要求1所述的方法,其特征在于,所述根据所述日志记录,对所述调度任务的执行过程进行监控,具体包括:
将所述日志记录传入预先构建的日志表格中;其中,所述日志表格中的字段包括ID、日志信息、所述调度服务器IP、所述调度系统的运行端口、日志时间、日志级别中的至少一种;
通过对所述日志表格中的数据进行分析,对所述调度任务的执行过程进行监控;所述执行过程包括任务触发、获取任务触发模式、任务开始执行、任务结束、任务出错中的至少一种;
在所述调度任务的执行过程出现异常时,通过所述调度服务器IP定位到所述调度服务器。
9.一种基于微服务模式的调度系统监控设备,其特征在于,应用于调度服务器,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
确定预先构建的功能代码;
在可视化界面中,确定待触发的类名与方法名;
根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;
根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;
在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;
在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;
构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
10.一种基于微服务模式的调度系统监控非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,应用于调度服务器,所述计算机可执行指令设置为:
确定预先构建的功能代码;
在可视化界面中,确定待触发的类名与方法名;
根据所述类名与所述方法名,生成调度任务,并确定通过触发器触发所述调度任务的执行频率;
根据所述功能代码、所述调度任务以及所述执行频率,生成微服务模式的调度系统;
在预设周期内,通过所述调度系统向预设数据库发送心跳,以在所述可视化界面中,对所述调度服务器的运行状态进行监控;
在所述调度系统的任务管理界面中,确定所述类名与方法名,并设置所述触发器,以通过所述触发器对所述调度任务的运行状态进行监控,以及对所述调度任务进行开启与停止;
构建所述调度系统的日志接口,通过调用所述日志接口对所述调度任务的执行过程进行日志记录,根据所述日志记录,对所述调度任务的执行过程进行监控。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210882381.5A CN115221008A (zh) | 2022-07-26 | 2022-07-26 | 一种基于微服务模式的调度系统监控方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210882381.5A CN115221008A (zh) | 2022-07-26 | 2022-07-26 | 一种基于微服务模式的调度系统监控方法、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115221008A true CN115221008A (zh) | 2022-10-21 |
Family
ID=83613464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210882381.5A Pending CN115221008A (zh) | 2022-07-26 | 2022-07-26 | 一种基于微服务模式的调度系统监控方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115221008A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117193990A (zh) * | 2023-11-08 | 2023-12-08 | 建信金融科技有限责任公司 | http接口的调度管理方法、装置、设备及存储介质 |
-
2022
- 2022-07-26 CN CN202210882381.5A patent/CN115221008A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117193990A (zh) * | 2023-11-08 | 2023-12-08 | 建信金融科技有限责任公司 | http接口的调度管理方法、装置、设备及存储介质 |
CN117193990B (zh) * | 2023-11-08 | 2024-02-23 | 建信金融科技有限责任公司 | http接口的调度管理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10656929B2 (en) | Autonomously healing microservice-based applications | |
US9256412B2 (en) | Scheduled and quarantined software deployment based on dependency analysis | |
US20180336113A1 (en) | Monitoring applications running on containers | |
US8381015B2 (en) | Fault tolerance for map/reduce computing | |
CN108243012B (zh) | 在线计费系统ocs中计费应用处理系统、方法及装置 | |
CN106843945B (zh) | 基于PaaS的GIS应用部署方法及系统 | |
US20170123777A1 (en) | Deploying applications on application platforms | |
CN108491254A (zh) | 一种数据仓库的调度方法及装置 | |
US9959157B1 (en) | Computing instance migration | |
US10698767B1 (en) | Decentralized management of multi-service workflows | |
CN112416581B (zh) | 定时任务的分布式调用系统 | |
CN113312153B (zh) | 一种集群部署方法、装置、电子设备及存储介质 | |
US10891129B1 (en) | Decentralized development operations blockchain system | |
US10372572B1 (en) | Prediction model testing framework | |
US11416379B1 (en) | Creation of software tests matching production personas | |
CN115221008A (zh) | 一种基于微服务模式的调度系统监控方法、设备及介质 | |
CN112948077A (zh) | 批处理方法、装置、设备及存储介质 | |
Posey et al. | Addressing the challenges of executing a massive computational cluster in the cloud | |
CN115065597B (zh) | 一种容器资源配置方法、装置、介质和设备 | |
CN109542920B (zh) | 一种数据传输方法、装置、介质和电子设备 | |
US20240012632A1 (en) | Coordinating updates to an agent platform appliance in which agents of cloud services are deployed | |
EP3062228A1 (en) | Lightweight functional testing | |
CN115080309A (zh) | 数据备份系统、方法、存储介质以及电子设备 | |
US11467862B2 (en) | Application change notifications based on application logs | |
CN114189439A (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 |