CN112817712A - 分布式调度方法、装置及广告系统 - Google Patents
分布式调度方法、装置及广告系统 Download PDFInfo
- Publication number
- CN112817712A CN112817712A CN202110101696.7A CN202110101696A CN112817712A CN 112817712 A CN112817712 A CN 112817712A CN 202110101696 A CN202110101696 A CN 202110101696A CN 112817712 A CN112817712 A CN 112817712A
- Authority
- CN
- China
- Prior art keywords
- machine
- zookeeper
- framework
- distributed scheduling
- module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012216 screening Methods 0.000 claims description 11
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/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
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Mathematical Physics (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种分布式调度方法、装置及广告系统,分布式调度方法包括部署基于zookeeper框架的集群,集群中包括多台机器,在每台机器上设置调度程序,将调度程序连接到zookeeper框架上,通过zookeeper框架实现在指定机器上执行调度程序。本申请可以在定时任务量大的时候,把定时任务分布到不同的机器上执行,比单机能执行更多的定时任务,并且不会发生混乱,保证广告系统正常运行。
Description
技术领域
本申请属于分布式调度技术领域,具体涉及一种分布式调度方法、装置及广告系统。
背景技术
随着广告市场不断扩大,广告正在以惊人的速度增长。因此,广告系统调度发挥的效用越来越显得重要。广告系统通常为分布式系统,采用定时调度方法进行广告调度。传统的调度方法是通过linux系统自带的配置文件进行定时调度或者通过软件程序实现定时调度,但是这些定时调度方法都是基于单机进行的,如果定时调度的任务比较多,在单台机器上无法承受这些定时调度任务的压力,需要更多机器来做负载的时候,如果按照上述定时调度的方法会因各个机器未协调好造成混乱,无法实现分布式调度,甚至影响广告的正常投放。
发明内容
为至少在一定程度上克服现有定时调度方法都是基于单机进行的,如果定时调度的任务比较多,在单台机器上无法承受这些定时调度任务的压力,需要更多机器来做负载的时候,无法实现分布式调度,甚至影响广告的正常投放的问题,本申请提供一种分布式调度方法、装置及广告系统。
第一方面,本申请提供一种分布式调度方法,包括:
部署基于zookeeper框架的集群,所述集群中包括多台机器;
在每台机器上设置调度程序,将所述调度程序连接到zookeeper框架上;
通过所述zookeeper框架实现在指定机器上执行所述调度程序。
进一步的,所述调度程序包括:定时程序。
进一步的,所述通过所述zookeeper框架实现在指定机器上执行所述调度程序,包括:
监听所述定时程序是否达到定时时间;
若是,每台机器都向所述zookeeper框架发送创建临时节点的申请;
所述zookeeper框架根据所述创建临时节点的申请筛选出指定机器,以实现在指定机器上执行所述调度程序。
进一步的,所述zookeeper框架根据所述创建临时节点的申请筛选出指定机器,包括:
将接收申请的时间进行排序,根据排序结果筛选出指定机器。
进一步的,还包括:
在所述指定机器执行完成后,所述zookeeper框架自动删除所述临时节点。
第二方面,本申请提供一种分布式调度装置,包括:
部署模块,用于部署基于zookeeper框架的集群,所述集群中包括多台机器;
设置模块,用于在每台机器上设置调度程序,将所述调度程序连接到zookeeper框架上;
执行模块,用于通过所述zookeeper框架实现在指定机器上执行所述调度程序。
进一步的,还包括:
申请模块,用于每台机器在定时程序达到定时时间时向所述zookeeper框架发送创建临时节点的申请。
进一步的,还包括:
筛选模块,用于所述zookeeper框架根据所述创建临时节点的申请筛选出指定机器,以实现在指定机器上执行所述调度程序。
进一步的,还包括:
删除模块,用于在指定机器执行完成后,所述zookeeper框架自动删除所述临时节点。
第三方面,本申请提供一种广告系统,包括:
基于zookeeper框架的集群,所述集群中包括多台机器;
所述每台机器包括处理器和存储器;
所述处理器用于执行存储器中存储的计算机程序以实现如第一方面中任意一项所述的分布式调度方法。
本申请的实施例提供的技术方案可以包括以下有益效果:
本发明实施例提供的分布式调度方法、装置及广告系统,通过部署基于zookeeper框架的集群,集群中包括多台机器,在每台机器上设置调度程序,将调度程序连接到zookeeper框架上,通过zookeeper框架实现在指定机器上执行调度程序,可以在定时任务量大的时候,把定时任务分布到不同的机器上执行,比单机能执行更多的定时任务,并且不会发生混乱,保证广告系统正常运行。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请一个实施例提供的一种分布式调度方法的流程图。
图2为本申请另一个实施例提供的一种分布式调度方法的流程图。
图3为本申请一个实施例提供的一种分布式调度装置的功能结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将对本申请的技术方案进行详细的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。
图1为本申请一个实施例提供的分布式调度方法的流程图,如图1所示,该分布式调度方法,包括:
S11:部署基于zookeeper框架的集群,集群中包括多台机器;
S12:在每台机器上设置调度程序,将调度程序连接到zookeeper框架上;
S13:通过zookeeper框架实现在指定机器上执行调度程序。
传统的调度方法是通过linux系统自带的配置文件进行定时调度或者通过软件程序实现定时调度,但是这些定时调度方法都是基于单机进行的,如果定时调度的任务比较多,在单台机器上无法承受这些定时调度任务的压力,需要更多机器来做负载的时候,如果按照上述定时调度的方法会因各个机器未协调好造成混乱,无法实现分布式调度,甚至影响广告的正常投放。
本实施例中,通过部署基于zookeeper框架的集群,集群中包括多台机器,在每台机器上设置调度程序,将调度程序连接到zookeeper框架上,通过zookeeper框架实现在指定机器上执行调度程序,可以在定时任务量大的时候,把定时任务分布到不同的机器上执行,比单机能执行更多的定时任务,并且不会发生混乱,保证广告系统正常运行。
图2为本申请另一个实施例提供的一种分布式调度方法的流程图,如图2所示,在调度程序为定时程序时,该分布式调度方法,包括:
S21:监听定时程序是否达到定时时间;
S22:若是,每台机器都向zookeeper框架发送创建临时节点的申请;
S23:zookeeper框架根据创建临时节点的申请筛选出指定机器,以实现在指定机器上执行调度程序。
一些实施例中,zookeeper框架根据创建临时节点的申请筛选出指定机器,包括:
将接收申请的时间进行排序,根据排序结果筛选出指定机器。
S24:在指定机器执行完成后,zookeeper框架自动删除临时节点。
通过自动删除临时节点可以不影响后续的定时调度,进一步保证系统正常运行。
本实施例中,通过zookeeper框架根据创建临时节点的申请筛选出指定机器,以实现在指定机器上执行调度程序,可以实现在分布式环境中,多台机器上执行调度而不出现互相冲突的情况,保证广告系统正常运行。
本发明实施例提供一种分布式调度装置,如图3所示的功能结构图,该分布式调度装置包括:
部署模块31,用于部署基于zookeeper框架的集群,集群中包括多台机器;
设置模块32,用于在每台机器上设置调度程序,将调度程序连接到zookeeper框架上;
执行模块33,用于通过zookeeper框架实现在指定机器上执行调度程序。
一些实施例中,还包括:
申请模块34,用于每台机器在定时程序达到定时时间时向zookeeper框架发送创建临时节点的申请。
筛选模块35,用述zookeeper框架根据创建临时节点的申请筛选出指定机器,以实现在指定机器上执行调度程序。
删除模块36,用于在指定机器执行完成后,zookeeper框架自动删除临时节点。
本实施例中,通过部署模块部署基于zookeeper框架的集群,集群中包括多台机器,设置模块在每台机器上设置调度程序,将调度程序连接到zookeeper框架上,执行模块通过zookeeper框架实现在指定机器上执行调度程序,可以在定时任务量大的时候,把定时任务分布到不同的机器上执行,比单机能执行更多的定时任务,并且不会发生混乱,保证广告系统正常运行。
本实施例提供一种广告系统,包括:
基于zookeeper框架的集群,集群中包括多台机器;
每台机器包括处理器和存储器;
处理器用于执行存储器中存储的计算机程序以实现如上述实施例中任意一项所述的分布式调度方法。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能组件的形式实现。所述集成的模块如果以软件功能组件的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
需要说明的是,本发明不局限于上述最佳实施方式,本领域技术人员在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是具有与本申请相同或相近似的技术方案,均落在本发明的保护范围之内。
Claims (10)
1.一种分布式调度方法,其特征在于,包括:
部署基于zookeeper框架的集群,所述集群中包括多台机器;
在每台机器上设置调度程序,将所述调度程序连接到zookeeper框架上;
通过所述zookeeper框架实现在指定机器上执行所述调度程序。
2.根据权利要求1所述的分布式调度方法,其特征在于,所述调度程序,包括:定时程序。
3.根据权利要求2所述的分布式调度方法,其特征在于,所述通过所述zookeeper框架实现在指定机器上执行所述调度程序,包括:
监听所述定时程序是否达到定时时间;
若是,每台机器都向所述zookeeper框架发送创建临时节点的申请;
所述zookeeper框架根据所述创建临时节点的申请筛选出指定机器,以实现在指定机器上执行所述调度程序。
4.根据权利要求3所述的分布式调度方法,其特征在于,所述zookeeper框架根据所述创建临时节点的申请筛选出指定机器,包括:
将接收申请的时间进行排序,根据排序结果筛选出指定机器。
5.根据权利要求3所述的分布式调度方法,其特征在于,还包括:
在所述指定机器执行完成后,所述zookeeper框架自动删除所述临时节点。
6.一种分布式调度装置,其特征在于,包括:
部署模块,用于部署基于zookeeper框架的集群,所述集群中包括多台机器;
设置模块,用于在每台机器上设置调度程序,将所述调度程序连接到zookeeper框架上;
执行模块,用于通过所述zookeeper框架实现在指定机器上执行所述调度程序。
7.根据权利要求6所述的分布式调度装置,其特征在于,还包括:
申请模块,用于每台机器在定时程序达到定时时间时向所述zookeeper框架发送创建临时节点的申请。
8.根据权利要求7所述的分布式调度装置,其特征在于,还包括:
筛选模块,用于所述zookeeper框架根据所述创建临时节点的申请筛选出指定机器,以实现在指定机器上执行所述调度程序。
9.根据权利要求7所述的分布式调度装置,其特征在于,还包括:
删除模块,用于在指定机器执行完成后,所述zookeeper框架自动删除所述临时节点。
10.一种广告系统,其特征在于,包括:
基于zookeeper框架的集群,所述集群中包括多台机器;
所述每台机器包括处理器和存储器;
所述处理器用于执行存储器中存储的计算机程序以实现如权利要求1至5中任意一项所述的分布式调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110101696.7A CN112817712A (zh) | 2021-01-26 | 2021-01-26 | 分布式调度方法、装置及广告系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110101696.7A CN112817712A (zh) | 2021-01-26 | 2021-01-26 | 分布式调度方法、装置及广告系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112817712A true CN112817712A (zh) | 2021-05-18 |
Family
ID=75859238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110101696.7A Pending CN112817712A (zh) | 2021-01-26 | 2021-01-26 | 分布式调度方法、装置及广告系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112817712A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120005682A1 (en) * | 2010-06-30 | 2012-01-05 | International Business Machines Corporation | Holistic task scheduling for distributed computing |
CN103744724A (zh) * | 2014-02-19 | 2014-04-23 | 互联网域名系统北京市工程研究中心有限公司 | 定时任务集群方法及其装置 |
CN110704185A (zh) * | 2019-09-20 | 2020-01-17 | 深圳市递四方信息科技有限公司 | 集群系统分片定时任务调度方法及集群系统 |
CN110737520A (zh) * | 2019-09-20 | 2020-01-31 | 深圳市递四方信息科技有限公司 | 集群系统调度控制定时任务的方法及集群系统 |
CN111597056A (zh) * | 2020-05-18 | 2020-08-28 | 北京思特奇信息技术股份有限公司 | 一种分布式调度方法、系统、存储介质和设备 |
-
2021
- 2021-01-26 CN CN202110101696.7A patent/CN112817712A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120005682A1 (en) * | 2010-06-30 | 2012-01-05 | International Business Machines Corporation | Holistic task scheduling for distributed computing |
CN103744724A (zh) * | 2014-02-19 | 2014-04-23 | 互联网域名系统北京市工程研究中心有限公司 | 定时任务集群方法及其装置 |
CN110704185A (zh) * | 2019-09-20 | 2020-01-17 | 深圳市递四方信息科技有限公司 | 集群系统分片定时任务调度方法及集群系统 |
CN110737520A (zh) * | 2019-09-20 | 2020-01-31 | 深圳市递四方信息科技有限公司 | 集群系统调度控制定时任务的方法及集群系统 |
CN111597056A (zh) * | 2020-05-18 | 2020-08-28 | 北京思特奇信息技术股份有限公司 | 一种分布式调度方法、系统、存储介质和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105426439B (zh) | 一种元数据的处理方法和装置 | |
CN105487980B (zh) | 修复应用程序运行异常的方法及装置 | |
CN107168789B (zh) | 多任务的串行调度方法以及装置 | |
CN109656782A (zh) | 可视化调度监控方法、装置及服务器 | |
CN112596885A (zh) | 任务调度方法、装置、设备及存储介质 | |
CN105068865A (zh) | 任务调度方法和装置 | |
CN109685465A (zh) | 任务发布方法及装置 | |
WO2018201778A1 (zh) | 部署云应用系统的方法及装置 | |
CN110569113A (zh) | 分布式任务的调度方法及系统、计算机可读存储介质 | |
CN112199180A (zh) | 多任务调度的方法及装置、电子设备及可读存储介质 | |
CN112817712A (zh) | 分布式调度方法、装置及广告系统 | |
CN111737275A (zh) | 数据库更新事件处理方法、装置及计算机可读存储介质 | |
CN110740047B (zh) | 一种网络切片管理编排系统 | |
CN114090198A (zh) | 分布式任务调度方法、装置、电子设备及存储介质 | |
CN112131188B (zh) | 批量文件分发处理方法及装置 | |
CN112738255A (zh) | 一种vr资源的下载分发处理方法、终端及系统 | |
CN113138843A (zh) | 应用内弹框显示顺序管理方法、装置和设备 | |
CN109343947A (zh) | 一种资源调度方法及装置 | |
US9032251B2 (en) | Re-forming an application control tree without terminating the application | |
CN112446714A (zh) | 快递售后工单处理系统的服务器升级方法、装置及设备 | |
CN107025126B (zh) | 一种资源调度方法、nfvo和系统 | |
CN116841728A (zh) | 集群资源调度方法、装置、电子设备及存储介质 | |
CN110795118A (zh) | 一种云平台升级工具及升级方法 | |
CN110610112A (zh) | 识别码显示方法和装置 | |
CN113568842B (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 |