CN111176856A - 一种智能控制消费脚本通道的方法 - Google Patents
一种智能控制消费脚本通道的方法 Download PDFInfo
- Publication number
- CN111176856A CN111176856A CN201811331132.7A CN201811331132A CN111176856A CN 111176856 A CN111176856 A CN 111176856A CN 201811331132 A CN201811331132 A CN 201811331132A CN 111176856 A CN111176856 A CN 111176856A
- Authority
- CN
- China
- Prior art keywords
- task
- queue
- consumption
- script
- python
- 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
- 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种智能控制消费脚本通道的方法,属于互联网技术领域,使用Python+Redis+Ansible进行集群化管理;每条消费队列超过某条等待任务后开启新Work,每条消费脚本低于多少条后进行回收;Python守护进程监听总任务队列,根据任务类型分配到对应的子队列,每个任务类型都对应独自的计数值,每进来一个相应的任务,进行加一,根据子任务work数进行取模后进行分派;每隔5秒,统计正在运行的队列的长度,读取配置信息后进行逻辑判断,对任务队列进行扩容或者回收。本发明可实时查看任务队列的处理能力,可进行预警监控,通过自定义配置可以自动对任务队列进行扩容、回收。
Description
技术领域
本发明涉及一种智能控制消费脚本通道的方法,属于互联网技术领域。
背景技术
目前,基于平台类型的站点有许多异步型的任务要进行处理,会使用多条消息队列进行处理,遇到突发大流量时需要上服务器进行手动分流,等流量峰值过去后又要上服务器手动回收,相对来说比较麻烦。
发明内容
本发明的主要目的是为了提供一种制作管理界面用于监控、配置任务脚本的智能控制消费脚本通道的方法。
本发明的目的可以通过采用如下技术方案达到:
一种智能控制消费脚本通道的方法,包括如下步骤:
步骤1:使用Python+Redis+Ansible进行集群化管理;
步骤2:配置队列的基础信息;
步骤3:任务路由分配;
步骤4:任务队列控制;
进一步的,所述步骤1中,使用Python+Redis+Ansible进行集群化管理,其中:
Python是根据配置信息进行逻辑处理;
Redis是存储配置+消费队列;
Ansible是指定某台服务器进行消息脚本扩容或回收。
进一步的,所述步骤2中,配置队列的基础信息包括:
消费队列任务名称;
执行消费脚本命令;
消费脚本所在服务器IP;
队列Work数【默认=》1】;
预警Work数;
预警联系人手机号。
进一步的,所述预警Work数包括:
每条消费队列超过某条等待任务后开启新Work【默认=》100】;
每条消费脚本低于多少条后进行回收,新的work有免回收的保护期。
进一步的,所述步骤3中,任务路由分配包括:
Python守护进程监听总任务队列,根据任务类型分配到对应的子队列;
每个任务类型都对应独自的计数值,每进来一个相应的任务,进行加一;
根据子任务work数进行取模后进行分派。
进一步的,所述步骤4中,任务队列控制包括:
每隔5秒,统计正在运行的队列的长度;
读取配置信息后进行逻辑判断,对任务队列进行扩容或者回收;
每个子队列都有【活动中、回收中】二种状态,处于回收中状态不进行分派,消费完成后进行回收。
本发明的有益技术效果:
本发明提供的智能控制消费脚本通道的方法,可实时查看任务队列的处理能力,可进行预警监控,通过自定义配置可以自动对任务队列进行扩容、回收。
附图说明
图1为按照本发明的智能控制消费脚本通道的方法的一优选实施例的流程图。
具体实施方式
为使本领域技术人员更加清楚和明确本发明的技术方案,下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
如图1所示,本实施例提供的智能控制消费脚本通道的方法,其特征在于,包括如下步骤:
步骤1:使用Python+Redis+Ansible进行集群化管理,其中,Python根据配置信息进行逻辑处理,Redis存储配置+消费队列,Ansible指定某台服务器进行消息脚本扩容或回收;
步骤2:配置队列的基础信息,消费队列任务名称,执行消费脚本命令,消费脚本所在服务器IP,队列Work数【默认=》1】,预警Work数,每条消费队列超过多少条等待任务后开启新Work【默认=》100】,每条消费脚本低于多少条后进行回收,新的work有免回收的保护期,预警联系人手机号;
步骤3:任务路由分配,Python守护进程监听总任务队列,根据任务类型分配到对应的子队列,每个任务类型都对应独自的计数值,每进来一个相应的任务,进行加一,根据子任务work数进行取模后进行分派;
步骤4:任务队列控制,每隔5秒,统计正在运行的队列的长度,读取配置信息后进行逻辑判断,对任务队列进行扩容或者回收,每个子队列都有【活动中、回收中】二种状态,处于回收中状态不进行分派,消费完成后进行回收。
综上所述,在本实施例中,本实施例提供的智能控制消费脚本通道的方法,可实时查看任务队列的处理能力,可进行预警监控,通过自定义配置可以自动对任务队列进行扩容、回收。
以上所述,仅为本发明进一步的实施例,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明所公开的范围内,根据本发明的技术方案及其构思加以等同替换或改变,都属于本发明的保护范围。
Claims (6)
1.一种智能控制消费脚本通道的方法,其特征在于,包括如下步骤:
步骤1:使用Python+Redis+Ansible进行集群化管理;
步骤2:配置队列的基础信息;
步骤3:任务路由分配;
步骤4:任务队列控制。
2.根据权利要求1所述的一种智能控制消费脚本通道的方法,其特征在于,所述步骤1中,使用Python+Redis+Ansible进行集群化管理,其中:
Python是根据配置信息进行逻辑处理;
Redis是存储配置+消费队列;
Ansible是指定某台服务器进行消息脚本扩容或回收。
3.根据权利要求1所述的一种智能控制消费脚本通道的方法,其特征在于,所述步骤2中,配置队列的基础信息包括:
消费队列任务名称;
执行消费脚本命令;
消费脚本所在服务器IP;
队列Work数【默认=》1】;
预警Work数;
预警联系人手机号。
4.根据权利要求3所述的一种智能控制消费脚本通道的方法,其特征在于,所述预警Work数包括:
每条消费队列超过某条等待任务后开启新Work【默认=》100】;
每条消费脚本低于多少条后进行回收,新的work有免回收的保护期。
5.根据权利要求1所述的一种智能控制消费脚本通道的方法,其特征在于,所述步骤3中,任务路由分配包括:
Python守护进程监听总任务队列,根据任务类型分配到对应的子队列;
每个任务类型都对应独自的计数值,每进来一个相应的任务,进行加一;
根据子任务work数进行取模后进行分派。
6.根据权利要求1所述的一种智能控制消费脚本通道的方法,其特征在于,所述步骤4中,任务队列控制包括:
每隔5秒,统计正在运行的队列的长度;
读取配置信息后进行逻辑判断,对任务队列进行扩容或者回收;
每个子队列都有【活动中、回收中】二种状态,处于回收中状态不进行分派,消费完成后进行回收。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811331132.7A CN111176856A (zh) | 2018-11-09 | 2018-11-09 | 一种智能控制消费脚本通道的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811331132.7A CN111176856A (zh) | 2018-11-09 | 2018-11-09 | 一种智能控制消费脚本通道的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111176856A true CN111176856A (zh) | 2020-05-19 |
Family
ID=70655311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811331132.7A Pending CN111176856A (zh) | 2018-11-09 | 2018-11-09 | 一种智能控制消费脚本通道的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111176856A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113806102A (zh) * | 2020-06-15 | 2021-12-17 | 中国移动通信集团浙江有限公司 | 消息队列处理方法、装置及计算设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294533A (zh) * | 2012-10-30 | 2013-09-11 | 北京安天电子设备有限公司 | 任务流控制方法及系统 |
CN103473129A (zh) * | 2013-09-18 | 2013-12-25 | 柳州市博源环科科技有限公司 | 线程数目可伸缩的多任务队列调度系统及其实现方法 |
US20150143377A1 (en) * | 2013-07-29 | 2015-05-21 | Splunk Inc. | Dynamic scheduling of tasks for collecting and processing data using job configuration data |
CN107193669A (zh) * | 2017-05-09 | 2017-09-22 | 千寻位置网络有限公司 | 基于混合云或大规模集群的维护接口的系统和设计方法 |
CN108629052A (zh) * | 2018-05-21 | 2018-10-09 | 平安科技(深圳)有限公司 | Kettle任务调度方法、系统、计算机设备和存储介质 |
CN108733476A (zh) * | 2017-04-20 | 2018-11-02 | 北京京东尚科信息技术有限公司 | 一种执行多任务的方法和装置 |
-
2018
- 2018-11-09 CN CN201811331132.7A patent/CN111176856A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294533A (zh) * | 2012-10-30 | 2013-09-11 | 北京安天电子设备有限公司 | 任务流控制方法及系统 |
US20150143377A1 (en) * | 2013-07-29 | 2015-05-21 | Splunk Inc. | Dynamic scheduling of tasks for collecting and processing data using job configuration data |
CN103473129A (zh) * | 2013-09-18 | 2013-12-25 | 柳州市博源环科科技有限公司 | 线程数目可伸缩的多任务队列调度系统及其实现方法 |
CN108733476A (zh) * | 2017-04-20 | 2018-11-02 | 北京京东尚科信息技术有限公司 | 一种执行多任务的方法和装置 |
CN107193669A (zh) * | 2017-05-09 | 2017-09-22 | 千寻位置网络有限公司 | 基于混合云或大规模集群的维护接口的系统和设计方法 |
CN108629052A (zh) * | 2018-05-21 | 2018-10-09 | 平安科技(深圳)有限公司 | Kettle任务调度方法、系统、计算机设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
达文姣等: "循环队列存储空间的动态扩充方法", 《自动化与仪器仪表》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113806102A (zh) * | 2020-06-15 | 2021-12-17 | 中国移动通信集团浙江有限公司 | 消息队列处理方法、装置及计算设备 |
CN113806102B (zh) * | 2020-06-15 | 2023-11-21 | 中国移动通信集团浙江有限公司 | 消息队列处理方法、装置及计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102364967B (zh) | 短信发送方法及系统 | |
CN101604264B (zh) | 超级计算机的任务调度方法及系统 | |
CA2741088C (en) | Methods of achieving cognizant power management | |
CN100517237C (zh) | 一种虚拟机系统及其cpu调度方法 | |
CN103176842B (zh) | 后台进程管理方法及其移动终端 | |
CN105868004B (zh) | 一种基于云计算的业务系统的调度方法及调度装置 | |
CN102110022B (zh) | 基于优先级调度的传感器网络嵌入式操作系统 | |
CN103248583B (zh) | 一种基于有限深度的先进先出报文队列管理方法及装置 | |
CN102591703B (zh) | 操作系统的任务调度方法、装置及计算机 | |
CN108536531B (zh) | 一种基于单片机的任务调度和电源管理方法 | |
CN106201676A (zh) | 一种任务分配方法及装置 | |
CN109451056A (zh) | 多集群间服务器动态分配方法及系统 | |
CN104572286A (zh) | 一种基于分布式内存集群的任务调度方法 | |
CN100351793C (zh) | 支持osek标准的嵌入式实时操作系统的任务调度方法 | |
CN102088719A (zh) | 一种业务调度方法、系统及设备 | |
CN111176856A (zh) | 一种智能控制消费脚本通道的方法 | |
CN109918181B (zh) | 基于最差响应时间的混合关键系统任务可调度性分析方法 | |
CN103019849B (zh) | 云计算环境下的虚拟机管理方法 | |
CN114138506A (zh) | 消息队列调度方法及其装置、设备、介质、产品 | |
CN102455932A (zh) | 一种任务实例串行执行方法、装置及系统 | |
CN107203256A (zh) | 一种网络功能虚拟化场景下的节能分配方法与装置 | |
CN103414784A (zh) | 支持应急模式的云计算资源调度方法 | |
CN103257894A (zh) | 一种管理程序的方法及电子终端 | |
CN103514036A (zh) | 一种用于事件触发和批量处理的调度系统和方法 | |
CN102546999A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200519 |