CN115373886A - 服务群组容器停机方法、装置、计算机设备和存储介质 - Google Patents

服务群组容器停机方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN115373886A
CN115373886A CN202211039755.3A CN202211039755A CN115373886A CN 115373886 A CN115373886 A CN 115373886A CN 202211039755 A CN202211039755 A CN 202211039755A CN 115373886 A CN115373886 A CN 115373886A
Authority
CN
China
Prior art keywords
container
shutdown
resource interaction
list
service group
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
Application number
CN202211039755.3A
Other languages
English (en)
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202211039755.3A priority Critical patent/CN115373886A/zh
Publication of CN115373886A publication Critical patent/CN115373886A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及大数据技术领域,特别涉及一种服务群组容器停机方法、装置、计算机设备和存储介质。方法包括:获取服务群组中的各容器对应的停机指令,并根据停机指令删除容器列表中对应的容器信息;根据各停机指令对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及根据停机指令启动各停机计时器;在资源交互信息检查结果为存在目标资源交互的情况下,将停机计时器的停机计算时长与预设的停机等待时长进行对比;在停机计算时长大于预设的停机等待时长的情况下,释放容器对应的运行资源,并根据停机指令对容器执行停止运行和将所述容器从所述服务群组中下线。采用本方法能够缩短维护的时间,提升容器维护效率。

Description

服务群组容器停机方法、装置、计算机设备和存储介质
技术领域
本申请涉及大数据技术领域,特别是涉及一种服务群组容器停机方法、装置、计算机设备和存储介质。
背景技术
随着大数据技术的发展,尤其是分布式系统应用,出现了应用容器的停机技术,由于业务复杂性,大型企业级分布式系统通常需要成千上万的容器。这种技术架构能大大提升系统并发量,但当大量应用容器重启升级版本时极易造成资源交互的链路中的上下游容器断连,导致部分未闭环的运行资源交互请求中断。需要事后回溯故障原因并进行数据补录操作,不但影响客户体验,也增加后台运维工作量和产生资源损失风险。
目前业界大多数分布式系统应用容器的停机流程是在系统停止服务前等待固定时间先让运行资源交互继续处理完,然后再停止服务器。但等待固定时间的做法难以保证在停机完成所有运行资源交互,并且服务器资源交互量少或无资源交互的状况下容易造成资源浪费以及耗时太久。此外,容器在停机过程中无法处理资源交互,同时大多数分布式系统的注册中心只能检查已注册的服务接口是否正常,无法判断容器本身是否已处于停机流程,导致容器的停机维护效率低下。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有效地缩短维护的时间,提升容器维护效率的服务群组容器停机方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种服务群组容器停机方法。所述方法包括:获取针对服务群组中的各容器对应的停机指令,并根据所述停机指令删除容器列表中对应的容器信息;根据各所述停机指令,对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据所述停机指令启动各所述容器对应的停机计时器;在所述资源交互信息检查结果为存在目标资源交互的情况下,则将所述停机计时器的停机计算时长与预设的停机等待时长进行对比;所述目标资源交互为所述容器正在处理的资源交互;在所述停机计算时长大于所述预设的停机等待时长的情况下,则释放所述容器对应的运行资源,并根据所述停机指令对所述容器执行停止运行和将所述容器从所述服务群组中下线。
在其中一个实施例中,所述方法还包括:获取所述服务群组中所有所述容器对应的容器集合列表的读取情况,以及所述服务群组中的未停机容器列表的读取情况;在所述容器集合列表的读取情况以及所述未停机容器列表的读取情况为成功的情况下,则将所述容器集合列表与所述未停机容器列表进行对比,选取所述容器对应的可用容器列表,所述可用容器列表用于所述服务群组调用对应的所述容器;根据所述可用容器列表,调取所述容器以处理所述服务群组对应的待处理业务需求。
在其中一个实施例中,所述根据所述可用容器列表,调取所述容器以处理所述服务群组对应的待处理业务需求,包括:获取所述服务群组对应的接口调用链,以及针对所述接口调用链预先设置的至少一种均衡负载方法,所述均衡负载方法为通过所述服务群组中预设的均衡负载算法计算得到的;根据所述可用容器列表以及所述接口调用链对应的至少一种均衡负载方法,确定满足所述服务群组的待处理业务需求对应的最优可调用容器组合列表;通过所述最优可调用容器组合列表,调取所述容器以处理所述服务群组对应的待处理业务需求。
在其中一个实施例中,所述获取所述服务群组中所有所述容器对应的容器集合列表的读取情况,以及所述服务群组中的未停机容器列表的读取情况之后,还包括:在所述容器集合列表的读取情况为未成功,或者,所述未停机容器列表的读取情况为未成功,或者,所述容器集合列表的读取情况以及所述未停机容器列表的读取情况同时为未成功的情况下,则执行所述获取所述服务群组对应的接口调用链的步骤。
在其中一个实施例中,所述调取所述容器,包括:根据上一个容器对应的分布式调用请求,执行当前容器被调用的接口对应的所述接口调用链;基于所述接口调用链对应的字节码,在所述接口调用链添加一个监控探针处理器,并根据所述监控探针处理器,生成事件编号,所述事件编号为所述资源交互信息的标识;执行所述当前容器的接口调用链对应的待处理业务需求,并使用所述分布式调用请求下一个容器生成答应报文;将所述下一个容器的答应报文反馈至所述上一个容器,并根据所述事件编号删除所述资源交互信息。
在其中一个实施例中,所述生成事件编号,包括:根据所述容器对应的资源交互信息,生成所述容器对应的自增序号;根据所述自增序号、渠道种类字典、服务器编号、资源交互日期、资源交互时间以及资源交互操作员编号,生成所述事件编号。
在其中一个实施例中,所述在所述资源交互信息检查结果为存在运行资源交互的情况下,则将所述停机计时器的停机计算时长与预设的预设的停机等待时长进行对比之后,还包括:在所述停机时长对比结果为所述停机计算时长小于或者等于所述预设的停机等待时长情况下,则返回执行所述对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果的步骤;直到所述资源交互信息检查结果为不存在所述运行资源交互,或者,所述停机时长对比结果为所述停机计算时长大于所述预设的停机等待时长。
第二方面,本申请还提供了一种服务群组容器停机装置。所述装置包括:指令获取模块,用于获取针对服务群组中的各容器对应的停机指令,并根据所述停机指令删除容器列表中对应的容器信息;信息检查模块,用于根据各所述停机指令,对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据所述停机指令启动各所述容器对应的停机计时器;时长对比模块,用于在所述资源交互信息检查结果为存在目标资源交互的情况下,则将所述停机计时器的停机计算时长与预设的停机等待时长进行对比;所述目标资源交互为所述容器正在处理的资源交互;停机执行模块,用于在所述停机计算时长大于所述预设的停机等待时长的情况下,则释放所述容器对应的运行资源,并根据所述停机指令对所述容器执行停止运行和将所述容器从所述服务群组中下线。
在其中一个实施例中,可用容器列表得到模块用于:获取所述服务群组中所有所述容器对应的容器集合列表的读取情况,以及所述服务群组中的未停机容器列表的读取情况;在所述容器集合列表的读取情况以及所述未停机容器列表的读取情况为成功的情况下,则将所述容器集合列表与所述未停机容器列表进行对比,选取所述容器对应的可用容器列表,所述可用容器列表用于所述服务群组调用对应的所述容器;根据所述可用容器列表,调取所述容器以处理所述服务群组对应的待处理业务需求。
在其中一个实施例中,可用容器列表得到模块用于:获取所述服务群组对应的接口调用链,以及针对所述接口调用链预先设置的至少一种均衡负载方法,所述均衡负载方法为通过所述服务群组中预设的均衡负载算法计算得到的;根据所述可用容器列表以及所述接口调用链对应的至少一种均衡负载方法,确定满足所述服务群组的待处理业务需求对应的最优可调用容器组合列表;通过所述最优可调用容器组合列表,调取所述容器以处理所述服务群组对应的待处理业务需求。
在其中一个实施例中,可用容器列表得到模块用于:在所述容器集合列表的读取情况为未成功,或者,所述未停机容器列表的读取情况为未成功,或者,所述容器集合列表的读取情况以及所述未停机容器列表的读取情况同时为未成功的情况下,则执行所述获取所述服务群组对应的接口调用链的步骤。
在其中一个实施例中,可用容器列表得到模块用于:根据上一个容器对应的分布式调用请求,执行当前容器被调用的接口对应的所述接口调用链;基于所述接口调用链对应的字节码,在所述接口调用链添加一个监控探针处理器,并根据所述监控探针处理器,生成事件编号,所述事件编号为所述资源交互信息的标识;执行所述当前容器的接口调用链对应的待处理业务需求,并使用所述分布式调用请求下一个容器生成答应报文;将所述下一个容器的答应报文反馈至所述上一个容器,并根据所述事件编号删除所述资源交互信息。
在其中一个实施例中,可用容器列表得到模块用于:根据所述容器对应的资源交互信息,生成所述容器对应的自增序号;根据所述自增序号、渠道种类字典、服务器编号、资源交互日期、资源交互时间以及资源交互操作员编号,生成所述事件编号。
在其中一个实施例中,时长对比模块用于:在所述停机时长对比结果为所述停机计算时长小于或者等于所述预设的停机等待时长情况下,则返回执行所述对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果的步骤;直到所述资源交互信息检查结果为不存在所述运行资源交互,或者,所述停机时长对比结果为所述停机计算时长大于所述预设的停机等待时长。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:获取针对服务群组中的各容器对应的停机指令,并根据所述停机指令删除容器列表中对应的容器信息;根据各所述停机指令,对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据所述停机指令启动各所述容器对应的停机计时器;在所述资源交互信息检查结果为存在目标资源交互的情况下,则将所述停机计时器的停机计算时长与预设的停机等待时长进行对比;所述目标资源交互为所述容器正在处理的资源交互;在所述停机计算时长大于所述预设的停机等待时长的情况下,则释放所述容器对应的运行资源,并根据所述停机指令对所述容器执行停止运行和将所述容器从所述服务群组中下线。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:获取针对服务群组中的各容器对应的停机指令,并根据所述停机指令删除容器列表中对应的容器信息;根据各所述停机指令,对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据所述停机指令启动各所述容器对应的停机计时器;在所述资源交互信息检查结果为存在目标资源交互的情况下,则将所述停机计时器的停机计算时长与预设的停机等待时长进行对比;所述目标资源交互为所述容器正在处理的资源交互;在所述停机计算时长大于所述预设的停机等待时长的情况下,则释放所述容器对应的运行资源,并根据所述停机指令对所述容器执行停止运行和将所述容器从所述服务群组中下线。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:获取针对服务群组中的各容器对应的停机指令,并根据所述停机指令删除容器列表中对应的容器信息;根据各所述停机指令,对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据所述停机指令启动各所述容器对应的停机计时器;在所述资源交互信息检查结果为存在目标资源交互的情况下,则将所述停机计时器的停机计算时长与预设的停机等待时长进行对比;所述目标资源交互为所述容器正在处理的资源交互;在所述停机计算时长大于所述预设的停机等待时长的情况下,则释放所述容器对应的运行资源,并根据所述停机指令对所述容器执行停止运行和将所述容器从所述服务群组中下线。
上述服务群组容器停机方法、装置、计算机设备、存储介质和计算机程序产品,通过获取针对服务群组中的各容器对应的停机指令,并根据停机指令删除容器列表中对应的容器信息;根据各停机指令,对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据停机指令启动各容器对应的停机计时器;在资源交互信息检查结果为存在目标资源交互的情况下,则将停机计时器的停机计算时长与预设的停机等待时长进行对比;目标资源交互为容器正在处理的资源交互;在停机计算时长大于预设的停机等待时长的情况下,则释放容器对应的运行资源,并根据停机指令对容器执行停止运行和将容器从服务群组中下线。
通过对待分布式系统中服务注册、服务路由及高速缓存等机制,在启动服务群组的容器停机流程时保证没有新的资源交互请求进入当前容器,并在不中断当前目标资源交互处理的前提下,以最短的时间实现快速下线服务群组的容器,实现应用系统快速地停机,缩减版本维护的时间窗口,提升应用版本升级效率。
附图说明
图1为一个实施例中服务群组容器停机方法的应用环境图;
图2为一个实施例中服务群组容器停机方法的流程示意图;
图3为一个实施例中得到可用容器列表方法的流程示意图;
图4为一个实施例中得到最优可调用容器组合列表方法的流程示意图;
图5为一个实施例中读取情况未成功方法的流程示意图;
图6为一个实施例中调取容器方法的流程示意图;
图7为一个实施例中生成时间编号方法的流程示意图;
图8为一个实施例中不满足停机计算时长大于停机等待时长方法的流程示意图;
图9为一个实施例中分布式系统装置的结构框图;
图10为一个实施例中服务群组容器停机装置的结构框图;
图11为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的服务群组容器停机方法,可以应用于如图1所示的应用环境中。终端102获取数据,服务器104响应终端102的指令接收终端102的数据,并且对获取得到的数据进行计算,服务器104将数据的计算结果传输回终端102,并且由终端102进行显示。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104从终端102获取针对服务群组中的各容器对应的停机指令,并根据停机指令删除容器列表中对应的容器信息;根据各停机指令,对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据停机指令启动各容器对应的停机计时器;在资源交互信息检查结果为存在目标资源交互的情况下,则将停机计时器的停机计算时长与预设的停机等待时长进行对比;目标资源交互为容器正在处理的资源交互;在停机计算时长大于预设的停机等待时长的情况下,则释放容器对应的运行资源,并根据停机指令对容器执行停止运行和将容器从服务群组中下线。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种服务群组容器停机方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,获取针对服务群组中的各容器对应的停机指令,并根据停机指令删除容器列表中对应的容器信息。
其中,服务群组可以是服务器群组(Server Farms),是用来描述位于某个地点的一组企业服务器。这些服务器与企业内部网高速连接,通常都与安全防火墙和WEB缓存服务器放在一起。服务器群组提供包括数据库访问、电子邮件、DNS在内的各项服务,群组中的服务器经常被用作组播信源。
其中,容器可以是服务器中的其中一个引擎,让开发者可以用统一的方式打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何安装了引擎的服务器上(包括流行的Linux机器、windows机器),也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
其中,停机指令可以是使得服务群组中的容器从暂停运行对应的程序,并从服务群组中下线的指令。
其中,容器列表可以是存有服务群组中各个容器的容器信息以及与容器相关的数据的列表。
其中,容器信息可以是服务群组中各个容器所携带的固有信息,例如容器IP等。
具体地,服务器响应终端的指令,从终端处获取至少两个容器对应的停机指令,并且根据停机指令中的代码,执行停机指令中删除容器列表中对应的容器信息的命令。各个服务群组支持停机时业务不中断的分布式组成如图9所示:包括:服务群组1、服务群组2、服务群组3……服务群组n,任意一个服务群组都是由多台部署相同程序的应用容器组成。服务群组中具有分布式服务注册中心、高速缓存装置以及监控中心装置。
其中,分布式服务注册中心,用来记录各个微服务的信息,例如微服务的名称、IP、端口等。微服务应用容器在启动时,将自己的信息注册到注册中心。注册中心提供查询API和管理API,查询API用于查询可用的微服务实例,管理API用于服务的注册与注销。
其中,高速缓存装置,由一个服务端实现管理和控制,有多个账户端节点存储数据,能够实现分布式群组容器高性能地读取数据。
其中,监控中心装置,用于接收服务集群运行过程中各类系统性能指标,交易数据,报警信息等,实现故障排查,事件分析,应用预警,管理驾驶舱等功能。
各服务群组应用容器通过分布式注册中心实现服务接口的发布与订阅。应用容器作为接口提供方启动时先往注册中心写入相关信息,如接口名、容器IP地址和端口等,等待容器内部完成所有功能初使化后,具备服务提供能力后,再往高速缓存装置的可用状态容器列表写入当前容器信息。
举例来说,服务器104从终端102中获取针对服务群组1-10的各个容器对应的停机指令A,并根据获取的到的停机指令A,对包含服务群组1-10中的各个容器的容器信息的容器列表中删除对应容器的容器信息。
步骤204,根据各停机指令,对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据停机指令启动各容器对应的停机计时器。
其中,资源交换列队可以是服务群组中的各个容器需要进行资源交换的命令、信息、状况等数据的列队。
其中,资源交互信息可以是资源交互列队中用来表示是否具有正在资源交互、已经进行资源交互或者未进行资源交互的信息。
其中,资源交互信息检查结果可以是对资源交互列队中的资源交换信息进行遍历后得到的结果,一般情况下,资源交互信息检查结果为存在正在资源交互、未开始资源交互或者已结束资源交互。
其中,停机计时器可以是用来计算服务群组各个容器接收到停机命令到当前时间的时间间距。
具体地,对于任意一个服务集群中的任一容器停机,首先在高速缓存的存储单元中的容器列表中删除本容器的容器信息,同时响应停机指令启动停机计时器,启动停机计时器的时候同步检查当前容器对应的资源交换列队中的资源交互信息中是否有进行中的未闭环资源交互,得到资源交互信息检查结果。其中,删除容器信息、启动停机计时器以及检查是否存在进行中的未闭环资源交互为接收到停机指令后,服务群组根据停机指令中的代码同时执行。其中,当资源交互闭环时会从资源交换列队中删除对应的事件编号,因此当资源交换列队不为空时,即表示有资源交互还未闭环。
举例来说,当服务器指向停机指令A后,对服务群组1-10中任意一个容器的资源交换列队中的资源交互信息进行遍历,同时输入资源交互信息结果(遍历结果);同时会执行启动容器的停机计时器,用来计算停机开始到当前时间的时间间隔t。
步骤206,在资源交互信息检查结果为存在目标资源交互的情况下,则将停机计时器的停机计算时长与预设的停机等待时长进行对比。
其中,目标资源交互可以是当前容器正在处理资源交互任务当中,也就是说正在执行资源交换列队中任意一个资源交换任务。
其中,停机计算时长可以是停机计时器从执行停机指令开始计算,到当前时间之间的时间间隔。
其中,停机等待时长可以是预定设置在服务器中用来进行对比的最长停机等待时长,也就是说,停机计算时长若超过停机等待时长,即执行后续命令,改时间为根据环境不同、业务场景不同的资源交互的平均耗时而配置。
具体地,如果资源交互信息检查结果为容器存在正在处理资源交互任务当中,则进一步将停机计时器所计算得到的停机计算时长与预设在服务器中的停机等待时长进行对比,得到停机计算时长与停机等待时长的对比结果;针对如果资源交互信息检查结果为容器不存在正在处理资源交互任务的情况下,则根据停机指令执行对容器执行停止运行和将容器从服务群组中下线。
举例来说,如果资源交互信息检查结果为容器a-g存在正在处理资源交互任务当中,则进一步将停机计时器所计算得到的停机计算时长t与预设在服务器中的停机等待时长T进行对比,得到停机计算时长t与停机等待时长T的对比结果。
步骤208,在停机计算时长大于预设的停机等待时长的情况下,则释放容器对应的运行资源,并根据停机指令对容器执行停止运行和将容器从服务群组中下线。
其中,运行资源可以是服务器中包括数据库连接,网络连接,本地缓存空间等。
具体地,如果资源交互信息检查结果为存在正在处理资源交互任务当中,且同时存在停机计算时长大于预设的停机等待时长的情况下,则执行停机命令中的容器资源释放的指令,也就是说释放包括数据库连接,网络连接,本地缓存空间等,然后根据停机指令中的停机步骤,相应地执行停止运行对应的容器以及将该容器从服务群组中进行下线处理;针对如果资源交互信息检查结果为存在正在处理资源交互任务当中,且存在停机计算时长不大于预设的停机等待时长的情况下则返回执行对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果的步骤,直到满足资源交互信息检查结果为容器不存在正在处理资源交互任务,或者存在停机计算时长大于预设的停机等待时长这两种情况的其中一种情况。
举例来说,如果检查到容器a-g的资源交互信息检查结果为存在正在处理资源交互任务当中,且同时存在停机计算时长t大于预设的停机等待时长T的情况下,则执行停机命令A中的容器资源释放的指令b,然后根据停机指令A中的停机步骤,相应地执行停止运行对应的容器a-g以及将该容器a-g从服务群组中进行下线处理。
上述服务群组容器停机方法中,通过获取针对服务群组中的各容器对应的停机指令,并根据停机指令删除容器列表中对应的容器信息;根据各停机指令,对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据停机指令启动各容器对应的停机计时器;在资源交互信息检查结果为存在目标资源交互的情况下,则将停机计时器的停机计算时长与预设的停机等待时长进行对比;目标资源交互为容器正在处理的资源交互;在停机计算时长大于预设的停机等待时长的情况下,则释放容器对应的运行资源,并根据停机指令对容器执行停止运行和将容器从服务群组中下线。
通过对待分布式系统中服务注册、服务路由及高速缓存等机制,在启动服务群组的容器停机流程时保证没有新的资源交互请求进入当前容器,并在不中断当前目标资源交互处理的前提下,以最短的时间实现快速下线服务群组的容器,实现应用系统快速地停机,缩减版本维护的时间窗口,提升应用版本升级效率。
在一个实施例中,如图3所示,方法还包括:
步骤302,获取服务群组中所有容器对应的容器集合列表的读取情况,以及服务群组中的未停机容器列表的读取情况。
其中,读取情况可以是服务群组对容器中的容器集合列表,以及未停机容器列表的读取是否成功的结果。
具体地,服务群组中各个容器的变化后的情况将返回至服务群组的监控中心装置中,并实时更新监控中心装置中的容器集合列表以及高速缓存中的未停机容器列表。当服务群组响应停机指令的时候,服务群组将读取监控中心装置中的所有容器对应的容器集合列表以及高速缓存中的没有被停机的未停机容器列表,并输出表示是否读取成功的读取情况,读取成功用是表示,读取不成功用否来表示。
举例来说,将服务群组中集合所有容器1-n的容器集合列表h以及服务群组中没有容器1-n中没有被停机的未停机容器列表i进行读取,分别输出容器结合列表h以及未停机容器列表i的读取情况。
步骤304,在容器集合列表的读取情况以及未停机容器列表的读取情况为成功的情况下,则将容器集合列表与未停机容器列表进行对比,选取容器对应的可用容器列表。
其中,可用容器列表可以是能够用于服务群组调用对应的容器所对应的列表,后续的容器调用,将从可用容器列表中进行容器的选取。
具体地,如果容器集合列表的读取情况为是的情况下,同时未停机容器列表的读取情况也为是的情况下,满足执行容器集合列表与未停机容器列表进行对比的条件,则执行将容器集合列表对应的列表信息与未停机容器列表对应的列表信息进行对比,并从对比结果中选取出能够用于服务群组调用对应的容器而进一步组成能够调用的容器所对应的列表。
举例来说,如果容器集合列表h的读取情况以及未停机容器列表i的读取情况均输出为是的情况下,则进一步将容器集合列表h的列表信息与未停机容器列表i的列表信息进行对比,选取出能调用的容器对应的可用容器列表j。
步骤306,根据可用容器列表,调取容器以处理服务群组对应的待处理业务需求。
其中,待处理业务需求可以是服务群组中将要处理的至少一个资源交互任务,以列队的方式输入至服务群组中。
具体地,根据可用容器列表中的可用容器信息,优先选取算力最大的服务群组对应的容器执行待处理业务需求,若算力最大的服务群组无法满足当前的待处理业务需求,则根据算力大小依次选取多个服务群组进行组合处理,以满足处理服务群组对应的待处理业务需求。
举例来说,根据可用容器列表j,从中选取合适的容器1-m,用作服务群组处理对应的待处理业务需求。
本实施例中,通过获取容器结合列表以及未停机容器列表的读取情况,进一步对比容器结合列表与未停机容器列表之间的差异,从中选出能够满足业务需求的容器组合成可用容器列表,并从可用容器列表选取恰当的容器进行计算,能够达到使用合适的容器配置对业务需求进行解决,提高服务群组的计算效率。
在一个实施例中,如图4所示,根据可用容器列表,调取容器以处理服务群组对应的待处理业务需求,包括:
步骤402,获取服务群组对应的接口调用链,以及针对接口调用链预先设置的至少一种均衡负载方法。
其中,接口调用链可以是系统完成一次业务调用的过程中,把服务之间的接口调用信息打点到日志中,然后将所有的打点的接口数据连接为一个树状链条。
其中,均衡负载方法可以是通过服务群组中预设的均衡负载算法计算得到的,而均衡负载算法可以是意思是将负载分摊到多个操作单元(服务器,中间件)上进行执行的算法。
具体地,获取之前的处理资源交互任务对应的所有服务群组的接口的数据,并且打点至日志数据表中,并根据日志数据表中的大点数据生成接口调用链,以供给后续的资源交互任务使用;同时,使用服务群组中预设的均衡负载算法计算出多个均衡负载方法,以供给后续的资源交互任务的均衡分配使用。其中,均衡负载算法可以是轮询、比率、优先权、最少连接、最快模式、观察模式、预测模式、动态性能分配、动态服务器补充、服务质量、服务类型以及规则模式。
举例来说,获取由服务群组中接口1-100对应的接口调用链,同时针对接口调用链预先设置了由动态性能分配均衡负载算法、规则模式以及预测模式计算而得到的三中不同的动态负载方法。
步骤404,根据可用容器列表以及接口调用链对应的至少一种均衡负载方法,确定满足服务群组的待处理业务需求对应的最优可调用容器组合列表。
其中,最优可调用容器组合列表可以是能被服务群组所调用的,而且是具有最佳的负载模式所对应的容器所形成的列表。
具体地,基于可用容器列表中的可用容器以及可用容器对应的服务群组,从接口调用链对应的多个均衡负载方法中选取至少一个均衡负载方法进行计算,以进一步确定能够满足服务群组的待处理业务需求所对应的最优可调用容器组合列表。其中最优可调用容器组合列表包括多个可调用容器以及可调用容器对应的服务群组。
举例来说,基于可用容器列表j,以及接口调用链对应的均衡负载方法1-10中选取均衡负载方法1-3,进一步确定能够满足服务群组的待处理业务需求对应的最优可调用容器组合列表k。
步骤406,通过最优可调用容器组合列表,调取容器以处理服务群组对应的待处理业务需求。
具体地,根据最优可调用容器组合列表中的最优容器信息,优先选取算力最大的服务群组对应的容器执行待处理业务需求,若算力最大的服务群组无法满足当前的待处理业务需求,则根据算力大小依次选取多个服务群组进行组合处理,以满足处理服务群组对应的待处理业务需求。
举例来说,根据最优可调用容器组合列表k,从中选取合适的容器1-h,用作服务群组处理对应的待处理业务需求。
本实施例中,通过使用接口调用链和均衡负载方法从可用容器列表中选取最优可调用容器组合成为列表,并从最优可调用容器组合列表中选取最优的容器组合进行计算,能够达到使用最优化的容器配置对业务需求进行解决,提高服务群组的计算效率。
在一个实施例中,如图5所示,获取服务群组中所有容器对应的容器集合列表的读取情况,以及服务群组中的未停机容器列表的读取情况之后,还包括:
步骤502,在容器集合列表的读取情况为未成功,或者,未停机容器列表的读取情况为未成功,或者,容器集合列表的读取情况以及未停机容器列表的读取情况同时为未成功的情况下,则执行获取服务群组对应的接口调用链的步骤。
具体地,如果容器集合列表的读取情况为否的情况下,或者,未停机容器列表的读取情况为否的情况下,或者,如果容器集合列表的读取情况为否的情况下,同时未停机容器列表的读取情况也为否的情况下,则返回执行“获取之前的处理资源交互任务对应的所有服务群组的接口的数据,并且打点至日志数据表中,并根据日志数据表中的大点数据生成接口调用链,以供给后续的资源交互任务使用”的步骤。
举例来说,如果容器集合列表h的读取情况输出为否的情况下,或者,未停机容器列表i的读取情况输出为否的情况下,或者,容器集合列表h的读取情况以及未停机容器列表i的读取情况均输出为否的情况下,则返回执行“获取由服务群组中接口1-100对应的接口调用链”的步骤。
本实施例中,通过对容器集合列表和未停机容器列表的读取不成功的情况进行监控,并发现读取不成功的情况下立即跳转至获取接口调用链的步骤,能够达到减少因为读取问题而进一步读取导致服务群组的资源浪费,提高服务群组的工作效率。
在一个实施例中,如图6所示,调取容器,包括:
步骤602,根据上一个容器对应的分布式调用请求,执行当前容器被调用的接口对应的接口调用链。
其中,分布式调用请求可以是至少一个服务群组对应需要处理的资源交互任务集合。
具体地,接收上一个容器对应的的分布式远程过程调用请求,开始执行当前容器用以被调用接口的接口调用链。
举例来说,根据1号容器对应的分布式调用请求,开始执行2号容器被调用接口对应的接口调用链
步骤604,基于接口调用链对应的字节码,在接口调用链添加一个监控探针处理器,并根据监控探针处理器,生成事件编号。
其中,字节码可以是一种包含执行程序,由一序列op代码/数据对组成的二进制文件,是一种中间码。
其中,监控探针处理器可以是通过监听支持802.11协议的设备发送的无线报文,实现对无线网络环境的监控,快速发现并获取周围无线网络环境中存在的无线设备,并获取设备的相关信息,生成相应的表项并直接发送到指定服务器上。
其中,事件编号可以是对于任何一个资源交互任务的唯一标识,能够从该标识读取出资源交互任务的情况。
具体地,基于字节码、JVM虚拟机技术以及分布式框架的filter机制,在接口调用链添加一个监控探针处理器,该监控探针处理器在接口逻辑被执行前触发,并根据监控探针处理器生成由请求报文的字段拼接而成的事件编号作为资源交互任务唯一标识记入资源交换列队。
举例来说,根据字节码、JVM虚拟机技术以及分布式框架的filter机制,在接口调用链添加一个监控探针处理器C,并且根据监控探针处理器C生成事件编号S。
步骤606,执行当前容器的接口调用链对应的待处理业务需求,并使用分布式调用请求下一个容器生成答应报文。
其中,答应报文可以是用来不同容器之间进行信息沟通的数据。
具体地,执行当前容器的接口调用链对应的待处理业务需求后,使用分布式远程过程调用请求调用下一个容器,下一个容器生成答应报文,或者,只是执行当前容器的接口调用链对应的待处理业务需求。
举例来说,执行当前容器2的接口调用链对应的待处理业务需求,并使用分布式调用请求下一个容器3生成答应报文3。
步骤608,将下一个容器的答应报文反馈至上一个容器,并根据事件编号删除资源交互信息。
具体地,生成应答报文,并且下一个容器的答应报文反馈至上一个容器,然后根据步骤604生成的事件编号从资源交换列队中查找出并删除本次资源交互信息,或者,只是执行根据步骤604生成的事件编号从资源交换列队中查找出并删除本次资源交互信息。
本实施例中,通过根据分布式调用请求对接口调用链的方式中,当资源交换列队中有资源交互任务在预设阈值时间范围内仍未完成闭环时,则将该次资源交互任务从资源交换列队中删除,并将事件编号及资源交互信息发送至监控中心装置。能够达到及时发现未达到阈值时间要求的资源交互任务,提高当前服务群组的效率。
在一个实施例中,如图7所示,生成事件编号,包括:
步骤702,根据容器对应的资源交互信息,生成容器对应的自增序号。
其中,自增序号可以是通过触发任意一个条件,然后对序号进行累加的情况。
具体地,容器内存中具备线程安全性的原子变量生成,容器每接收一次资源交互,均使用该原子变量递增获得自增序号,当原子变量值递增到最大值时则将其重置为最小值。
步骤704,根据自增序号、渠道种类字典、服务器编号、资源交互日期、资源交互时间以及资源交互操作员编号,生成事件编号。
具体地,通过顺序依次为渠道种类字典+服务器编号+资源交互日期+资源交互时间+资源交互操作员编号+自增序号生成该资源交互对应的事件编号。
举例来说,比如资源交互机器的渠道的字典的为02,当服务器编号为0012,资源交互日期和资源交互时间为2022年5月15日9点30分15秒,资源交互操作员编号为00689741,获得的自增序号为109657,则拼接后的事件编号为0200122022051509301500689741109657。
本实施例中,通过以上组合方式,可确保服务群组中每次资源交互的事件编号都具备唯一性,避免不同资源交互生成相同事件编号,导致后续停机流程检查正在进行的资源交易时产生误判。同时,也使得事件编号具备一定的含义,为后续使用事件编号排查问题,监控分析提供便利性。
在一个实施例中,如图8所示,在资源交互信息检查结果为存在运行资源交互的情况下,则将停机计时器的停机计算时长与预设的预设的停机等待时长进行对比之后,还包括:
步骤802,在停机时长对比结果为停机计算时长小于或者等于预设的停机等待时长情况下,则返回执行对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果的步骤。
具体地,如果资源交互信息检查结果为存在正在处理资源交互任务当中,但是同时存在停机计算时长小于或者等于预设的停机等待时长的情况下,则返回执行“对于任意一个服务集群中的任一容器停机,首先在高速缓存的存储单元中的容器列表中删除本容器的容器信息,同时检查当前容器对应的资源交换列队中的资源交互信息中是否有进行中的未闭环资源交互,得到资源交互信息检查结果”的步骤。
举例来说,如果检查到容器a-g的资源交互信息检查结果为存在正在处理资源交互任务当中,且同时存在停机计算时长t小于或者等于预设的停机等待时长T的情况下,则返回执行“当服务器指向停机指令A后,对服务群组1-10中任意一个容器的资源交换列队中的资源交互信息进行遍历,同时输入资源交互信息结果(遍历结果)”。
步骤804,直到资源交互信息检查结果为不存在运行资源交互,或者,停机时长对比结果为停机计算时长大于预设的停机等待时长。
具体地,重复执行步骤802,直到满足资源交互信息检查结果为容器不存在正在处理资源交互任务,或者存在停机计算时长大于预设的停机等待时长这两种情况的其中一种情况,则停止执行循环;若循环次数大于预设的阈值,则直接执行停止循环,并且跳出停机指令,并且输出报错提醒。
举例来说,重复执行步骤802,直到满足检查到容器a-g的资源交互信息检查结果为不存在正在处理资源交互任务当中,或者存在停机计算时长t大于预设的停机等待时长T的情况,停止执行循环。
本实施例中,通过对停机计算时长小于或者等于预设的停机等待时长情况下执行循环操作,直到资源交互信息检查结果为不存在运行资源交互或者停机时长对比结果为停机计算时长大于预设的停机等待时长,能够达到所有的资源交互任务都最大化地满足计算条件,提高系统的效率和准确度。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的服务群组容器停机方法的服务群组容器停机装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个服务群组容器停机装置实施例中的具体限定可以参见上文中对于服务群组容器停机方法的限定,在此不再赘述。
在一个实施例中,如图10所示,提供了一种服务群组容器停机装置,包括:指令获取模块1002、信息检查模块1004、时长对比模块1006和停机执行模块1008,其中:
指令获取模块1002,用于获取针对服务群组中的各容器对应的停机指令,并根据停机指令删除容器列表中对应的容器信息;
信息检查模块1004,用于根据各停机指令,对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据停机指令启动各容器对应的停机计时器;
时长对比模块1006,用于在资源交互信息检查结果为存在目标资源交互的情况下,则将停机计时器的停机计算时长与预设的停机等待时长进行对比;目标资源交互为容器正在处理的资源交互;
停机执行模块1008,用于在停机计算时长大于预设的停机等待时长的情况下,则释放容器对应的运行资源,并根据停机指令对容器执行停止运行和将容器从服务群组中下线。
在其中一个实施例中,可用容器列表得到模块用于:获取服务群组中所有容器对应的容器集合列表的读取情况,以及服务群组中的未停机容器列表的读取情况;在容器集合列表的读取情况以及未停机容器列表的读取情况为成功的情况下,则将容器集合列表与未停机容器列表进行对比,选取容器对应的可用容器列表,可用容器列表用于服务群组调用对应的容器;根据可用容器列表,调取容器以处理服务群组对应的待处理业务需求。
在其中一个实施例中,可用容器列表得到模块用于:获取服务群组对应的接口调用链,以及针对接口调用链预先设置的至少一种均衡负载方法,均衡负载方法为通过服务群组中预设的均衡负载算法计算得到的;根据可用容器列表以及接口调用链对应的至少一种均衡负载方法,确定满足服务群组的待处理业务需求对应的最优可调用容器组合列表;通过最优可调用容器组合列表,调取容器以处理服务群组对应的待处理业务需求。
在其中一个实施例中,可用容器列表得到模块用于:在容器集合列表的读取情况为未成功,或者,未停机容器列表的读取情况为未成功,或者,容器集合列表的读取情况以及未停机容器列表的读取情况同时为未成功的情况下,则执行获取服务群组对应的接口调用链的步骤。
在其中一个实施例中,可用容器列表得到模块用于:根据上一个容器对应的分布式调用请求,执行当前容器被调用的接口对应的接口调用链;基于接口调用链对应的字节码,在接口调用链添加一个监控探针处理器,并根据监控探针处理器,生成事件编号,事件编号为资源交互信息的标识;执行当前容器的接口调用链对应的待处理业务需求,并使用分布式调用请求下一个容器生成答应报文;将下一个容器的答应报文反馈至上一个容器,并根据事件编号删除资源交互信息。
在其中一个实施例中,可用容器列表得到模块用于:根据容器对应的资源交互信息,生成容器对应的自增序号;根据自增序号、渠道种类字典、服务器编号、资源交互日期、资源交互时间以及资源交互操作员编号,生成事件编号。
在其中一个实施例中,时长对比模块用于:在停机时长对比结果为停机计算时长小于或者等于预设的停机等待时长情况下,则返回执行对各容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果的步骤;直到资源交互信息检查结果为不存在运行资源交互,或者,停机时长对比结果为停机计算时长大于预设的停机等待时长。
上述服务群组容器停机装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储服务器数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种服务群组容器停机方法。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (11)

1.一种服务群组容器停机方法,其特征在于,所述方法包括:
获取针对服务群组中的各容器对应的停机指令,并根据所述停机指令删除容器列表中对应的容器信息;
根据各所述停机指令,对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据所述停机指令启动各所述容器对应的停机计时器;
在所述资源交互信息检查结果为存在目标资源交互的情况下,则将所述停机计时器的停机计算时长与预设的停机等待时长进行对比;所述目标资源交互为所述容器正在处理的资源交互;
在所述停机计算时长大于所述预设的停机等待时长的情况下,则释放所述容器对应的运行资源,并根据所述停机指令对所述容器执行停止运行和将所述容器从所述服务群组中下线。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述服务群组中所有所述容器对应的容器集合列表的读取情况,以及所述服务群组中的未停机容器列表的读取情况;
在所述容器集合列表的读取情况以及所述未停机容器列表的读取情况为成功的情况下,则将所述容器集合列表与所述未停机容器列表进行对比,选取所述容器对应的可用容器列表,所述可用容器列表用于所述服务群组调用对应的所述容器;
根据所述可用容器列表,调取所述容器以处理所述服务群组对应的待处理业务需求。
3.根据权利要求2所述的方法,其特征在于,所述根据所述可用容器列表,调取所述容器以处理所述服务群组对应的待处理业务需求,包括:
获取所述服务群组对应的接口调用链,以及针对所述接口调用链预先设置的至少一种均衡负载方法,所述均衡负载方法为通过所述服务群组中预设的均衡负载算法计算得到的;
根据所述可用容器列表以及所述接口调用链对应的至少一种均衡负载方法,确定满足所述服务群组的待处理业务需求对应的最优可调用容器组合列表;
通过所述最优可调用容器组合列表,调取所述容器以处理所述服务群组对应的待处理业务需求。
4.根据权利要求3所述的方法,其特征在于,所述获取所述服务群组中所有所述容器对应的容器集合列表的读取情况,以及所述服务群组中的未停机容器列表的读取情况之后,还包括:
在所述容器集合列表的读取情况为未成功,或者,所述未停机容器列表的读取情况为未成功,或者,所述容器集合列表的读取情况以及所述未停机容器列表的读取情况同时为未成功的情况下,则执行所述获取所述服务群组对应的接口调用链的步骤。
5.根据权利要求2所述的方法,其特征在于,所述调取所述容器,包括:
根据上一个容器对应的分布式调用请求,执行当前容器被调用的接口对应的所述接口调用链;
基于所述接口调用链对应的字节码,在所述接口调用链添加一个监控探针处理器,并根据所述监控探针处理器,生成事件编号,所述事件编号为所述资源交互信息的标识;
执行所述当前容器的接口调用链对应的待处理业务需求,并使用所述分布式调用请求下一个容器生成答应报文;
将所述下一个容器的答应报文反馈至所述上一个容器,并根据所述事件编号删除所述资源交互信息。
6.根据权利要求5所述的方法,其特征在于,所述生成事件编号,包括:
根据所述容器对应的资源交互信息,生成所述容器对应的自增序号;
根据所述自增序号、渠道种类字典、服务器编号、资源交互日期、资源交互时间以及资源交互操作员编号,生成所述事件编号。
7.根据权利要求1所述的方法,其特征在于,所述在所述资源交互信息检查结果为存在运行资源交互的情况下,则将所述停机计时器的停机计算时长与预设的预设的停机等待时长进行对比之后,还包括:
在所述停机时长对比结果为所述停机计算时长小于或者等于所述预设的停机等待时长情况下,则返回执行所述对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果的步骤;
直到所述资源交互信息检查结果为不存在所述运行资源交互,或者,所述停机时长对比结果为所述停机计算时长大于所述预设的停机等待时长。
8.一种服务群组容器停机装置,其特征在于,所述装置包括:
指令获取模块,用于获取针对服务群组中的各容器对应的停机指令,并根据所述停机指令删除容器列表中对应的容器信息;
信息检查模块,用于根据各所述停机指令,对各所述容器中对应的资源交换列队中的资源交互信息进行检查,得到资源交互信息检查结果;以及,根据所述停机指令启动各所述容器对应的停机计时器;
时长对比模块,用于在所述资源交互信息检查结果为存在目标资源交互的情况下,则将所述停机计时器的停机计算时长与预设的停机等待时长进行对比;所述目标资源交互为所述容器正在处理的资源交互;
停机执行模块,用于在所述停机计算时长大于所述预设的停机等待时长的情况下,则释放所述容器对应的运行资源,并根据所述停机指令对所述容器执行停止运行和将所述容器从所述服务群组中下线。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202211039755.3A 2022-08-29 2022-08-29 服务群组容器停机方法、装置、计算机设备和存储介质 Pending CN115373886A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211039755.3A CN115373886A (zh) 2022-08-29 2022-08-29 服务群组容器停机方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211039755.3A CN115373886A (zh) 2022-08-29 2022-08-29 服务群组容器停机方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN115373886A true CN115373886A (zh) 2022-11-22

Family

ID=84069063

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211039755.3A Pending CN115373886A (zh) 2022-08-29 2022-08-29 服务群组容器停机方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN115373886A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117519914A (zh) * 2024-01-08 2024-02-06 成都卓拙科技有限公司 云主机控制方法、装置及管理主机

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117519914A (zh) * 2024-01-08 2024-02-06 成都卓拙科技有限公司 云主机控制方法、装置及管理主机
CN117519914B (zh) * 2024-01-08 2024-03-12 成都卓拙科技有限公司 云主机控制方法、装置及管理主机

Similar Documents

Publication Publication Date Title
US10348809B2 (en) Naming of distributed business transactions
US20190266537A1 (en) Systems and methods for incident queue assignment and prioritization
EP3543866B1 (en) Resource-efficient record processing in unified automation platforms for robotic process automation
CN107016480B (zh) 任务调度方法、装置及系统
US10698745B2 (en) Adapter extension for inbound messages from robotic automation platforms to unified automation platform
US10754705B2 (en) Managing metadata hierarch for a distributed processing system with depth-limited hierarchy subscription
US20170085512A1 (en) Generating message envelopes for heterogeneous events
US10305817B1 (en) Provisioning system and method for a distributed computing environment using a map reduce process
US11231967B2 (en) Dynamically allocating and managing cloud workers
US9973306B2 (en) Freshness-sensitive message delivery
US20220222266A1 (en) Monitoring and alerting platform for extract, transform, and load jobs
US11816511B1 (en) Virtual partitioning of a shared message bus
CN115373886A (zh) 服务群组容器停机方法、装置、计算机设备和存储介质
US11068487B2 (en) Event-stream searching using compiled rule patterns
CN116594752A (zh) 流程调度方法、装置、设备、介质和程序产品
CN111435356A (zh) 数据特征提取方法、装置、计算机设备以及存储介质
CN114090268B (zh) 容器管理方法及容器管理系统
CN115658248A (zh) 任务调度方法方法、装置、电子设备及存储介质
US20220276901A1 (en) Batch processing management
CN113421109A (zh) 一种业务核对方法、装置、电子设备和存储介质
US20240069961A1 (en) Batch functions framework
CN112732415B (zh) 基于资源交换代理系统的事务处理方法、装置和设备
US11687269B2 (en) Determining data copy resources
US20240039929A1 (en) System and method for threat detection across multiple cloud environments utilizing normalized event logs
CN117271277A (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