本技術(shù)涉及動(dòng)態(tài)任務(wù)執(zhí)行,特別是涉及一種執(zhí)行拉取廣告計(jì)劃任務(wù)方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)。
背景技術(shù):
1、目前在執(zhí)行任務(wù)時(shí)都是使用定時(shí)觸發(fā)的任務(wù)運(yùn)行器,但是一旦任務(wù)觸發(fā)以后,就只會(huì)在某一臺(tái)機(jī)器上執(zhí)行,具體使用場(chǎng)景是將所有的廣告計(jì)劃的報(bào)表數(shù)據(jù)從媒體側(cè)拉回,如拉回的頻率是10分鐘一次,一個(gè)廣告計(jì)劃需要拉取多個(gè)不同維度的報(bào)表數(shù)據(jù)。
2、這樣,在拉取媒體報(bào)表數(shù)據(jù)時(shí)會(huì)同時(shí)出現(xiàn)多個(gè)任務(wù)同時(shí)運(yùn)行的情況,如果此時(shí)多個(gè)任務(wù)正好在同一機(jī)器上運(yùn)行,那么可能會(huì)導(dǎo)致機(jī)器的負(fù)載過(guò)高,最終導(dǎo)致機(jī)器運(yùn)行出現(xiàn)異常如內(nèi)存溢出的情況(oom),從而影響任務(wù)的正常執(zhí)行。還有一種做法是增加機(jī)器的配置,如增加核數(shù),擴(kuò)大內(nèi)存等,但是因?yàn)槿蝿?wù)的運(yùn)行不固定在某臺(tái)機(jī)器上,所以可能會(huì)出現(xiàn)某一臺(tái)的機(jī)器負(fù)載很高,但是其他機(jī)器沒(méi)有負(fù)載或者負(fù)載很低,這會(huì)極大的導(dǎo)致資源的浪費(fèi)。
3、多個(gè)任務(wù)同時(shí)運(yùn)行還會(huì)出現(xiàn)一種情況就是,在運(yùn)行期間會(huì)導(dǎo)致帶寬的波峰疊加,出現(xiàn)一個(gè)很大的帶寬波峰,這同樣會(huì)導(dǎo)致因?yàn)檫@個(gè)高波峰而不得不購(gòu)買較大的帶寬,但是不運(yùn)行任務(wù)時(shí)又會(huì)出現(xiàn)浪費(fèi)。
技術(shù)實(shí)現(xiàn)思路
1、基于此,提供一種執(zhí)行拉取廣告計(jì)劃任務(wù)方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì),用于解決在使用任務(wù)運(yùn)行器定時(shí)觸發(fā)將所有的廣告計(jì)劃的報(bào)表數(shù)據(jù)從媒體側(cè)拉回時(shí)多個(gè)任務(wù)同時(shí),多個(gè)任務(wù)運(yùn)行在同一臺(tái)機(jī)器上會(huì)導(dǎo)致機(jī)器異常,多個(gè)任務(wù)同時(shí)運(yùn)行也會(huì)導(dǎo)致出網(wǎng)帶寬的波峰疊加的技術(shù)問(wèn)題。
2、一方面,提供一種執(zhí)行拉取廣告計(jì)劃任務(wù)方法,所述方法包括:
3、響應(yīng)于執(zhí)行拉取廣告計(jì)劃任務(wù)從媒體服務(wù)器拉取廣告計(jì)劃時(shí),獲取需要拉回的廣告計(jì)劃總數(shù),獲取要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng);
4、根據(jù)歷史數(shù)據(jù)獲取拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng),將所述需要拉回的廣告計(jì)劃總數(shù)乘以所述拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)獲得拉取所有廣告計(jì)劃的總時(shí)長(zhǎng);
5、根據(jù)所述要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng)以及所述拉取所有廣告計(jì)劃的總時(shí)長(zhǎng)獲取用于執(zhí)行拉取廣告計(jì)劃任務(wù)的最少任務(wù)主體個(gè)數(shù);
6、根據(jù)所述最少任務(wù)主體個(gè)數(shù)將所述廣告計(jì)劃分為多組,將每一組廣告計(jì)劃按序發(fā)送對(duì)應(yīng)的任務(wù)主體;
7、所述任務(wù)主體根據(jù)接收到所述廣告計(jì)劃的順序執(zhí)行拉取廣告計(jì)劃任務(wù)。
8、在其中一個(gè)實(shí)施例中,所述根據(jù)歷史數(shù)據(jù)獲取拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)步驟包括:
9、記錄每個(gè)執(zhí)行主體每次執(zhí)行拉取廣告計(jì)劃任務(wù)的所需時(shí)長(zhǎng)以及對(duì)應(yīng)時(shí)段的帶寬負(fù)載,形成歷史拉取廣告計(jì)劃任務(wù)的所需時(shí)長(zhǎng)以及歷史每個(gè)時(shí)段的帶寬負(fù)載;
10、根據(jù)所述歷史拉取廣告計(jì)劃任務(wù)的所需時(shí)長(zhǎng)以及所述歷史每個(gè)時(shí)段的帶寬負(fù)載訓(xùn)練形成分時(shí)段拉取耗時(shí)關(guān)系模型;
11、利用所述分時(shí)段拉取耗時(shí)關(guān)系模型獲取每個(gè)時(shí)段拉取所述廣告計(jì)劃的所需時(shí)長(zhǎng)并保存;
12、根據(jù)所有執(zhí)行拉取廣告計(jì)劃任務(wù)的分配時(shí)間,在所述要求拉回廣告計(jì)劃的總時(shí)長(zhǎng)內(nèi)調(diào)取每個(gè)時(shí)段的拉取所述廣告計(jì)劃的所需時(shí)長(zhǎng);
13、根據(jù)在所述要求拉回廣告計(jì)劃的總時(shí)長(zhǎng)內(nèi)每個(gè)時(shí)段的拉取所述廣告計(jì)劃的所需時(shí)長(zhǎng)計(jì)算出各個(gè)時(shí)段內(nèi)的拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)。
14、在其中一個(gè)實(shí)施例中,所述根據(jù)所述歷史拉取廣告計(jì)劃任務(wù)的所需時(shí)長(zhǎng)以及所述歷史每個(gè)時(shí)段的帶寬負(fù)載訓(xùn)練形成分時(shí)段拉取耗時(shí)關(guān)系模型包括:
15、根據(jù)所述歷史每個(gè)時(shí)段的帶寬負(fù)載獲取對(duì)應(yīng)每個(gè)時(shí)段的網(wǎng)絡(luò)帶寬被占用的比例作為網(wǎng)絡(luò)利用率;
16、定義網(wǎng)絡(luò)原始帶寬為mb1,當(dāng)前網(wǎng)絡(luò)利用率為uf,網(wǎng)絡(luò)實(shí)際可用帶寬為mb2,則mb2=mb1*times(1-uf),其中0≤uf≤1,times(1-uf)代表帶寬使用率;
17、構(gòu)建數(shù)據(jù)下載時(shí)間td的計(jì)算公式為:td=fracdn8uhelbkzum{mb2}=fracdn8uhelbkzum{mb1*times(1-uf)},其中d代表下載的數(shù)據(jù)量,fracdn8uhelbkzum代表實(shí)際需要下載的文件大??;
18、根據(jù)所述歷史拉取廣告計(jì)劃任務(wù)的所需時(shí)長(zhǎng)以及所述歷史每個(gè)時(shí)段的帶寬負(fù)載對(duì)應(yīng)的數(shù)據(jù)下載時(shí)間訓(xùn)練形成分時(shí)段拉取耗時(shí)關(guān)系模型。
19、在其中一個(gè)實(shí)施例中,所述根據(jù)所述要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng)以及所述拉取所有廣告計(jì)劃的總時(shí)長(zhǎng)獲取用于執(zhí)行拉取廣告計(jì)劃任務(wù)的最少任務(wù)主體個(gè)數(shù)包括:
20、定義所述需要拉回的廣告計(jì)劃總數(shù)為n,所述拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)為m+w,其中m為拉取所述廣告計(jì)劃的所需時(shí)長(zhǎng),w為當(dāng)前網(wǎng)絡(luò)延遲時(shí)間,則所述拉取所有廣告計(jì)劃的總時(shí)長(zhǎng)為n(m+w);
21、定義所述要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng)為t1,則用于執(zhí)行拉取廣告計(jì)劃任務(wù)的最少任務(wù)主體個(gè)數(shù)為n(m+w)/t1。
22、在其中一個(gè)實(shí)施例中,所述根據(jù)所述最少任務(wù)主體個(gè)數(shù)將所述廣告計(jì)劃分為多組包括:
23、設(shè)置所述廣告計(jì)劃的組數(shù)大于等于所述最少任務(wù)主體個(gè)數(shù);
24、將所有廣告計(jì)劃按照所述廣告計(jì)劃的組數(shù)均分為多組,將每一組廣告計(jì)劃關(guān)聯(lián)一個(gè)任務(wù)主體。
25、在其中一個(gè)實(shí)施例中,所述將每一組廣告計(jì)劃按序發(fā)送對(duì)應(yīng)的任務(wù)主體包括:
26、獲取當(dāng)前時(shí)段內(nèi)的拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng);
27、將每一組廣告計(jì)劃按序間隔所述當(dāng)前時(shí)段內(nèi)的拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)依次發(fā)送所述廣告計(jì)劃至對(duì)應(yīng)的任務(wù)主體;
28、響應(yīng)于所述任務(wù)主體執(zhí)行完所有從媒體服務(wù)器拉取廣告計(jì)劃后,判斷對(duì)應(yīng)的一組廣告計(jì)劃中是否存在剩余的廣告計(jì)劃;
29、若所述任務(wù)主體對(duì)應(yīng)的一組廣告計(jì)劃中存在剩余的廣告計(jì)劃,則將下一個(gè)廣告計(jì)劃發(fā)送至對(duì)應(yīng)的任務(wù)主體;若所述任務(wù)主體對(duì)應(yīng)的一組廣告計(jì)劃中不存在剩余的廣告計(jì)劃,則向所述任務(wù)主體反饋執(zhí)行拉取廣告計(jì)劃任務(wù)完成。
30、在其中一個(gè)實(shí)施例中,所述執(zhí)行拉取廣告計(jì)劃任務(wù)方法還包括:
31、設(shè)置任務(wù)運(yùn)行器定時(shí)觸發(fā)執(zhí)行拉取廣告計(jì)劃任務(wù);
32、在當(dāng)前執(zhí)行拉取廣告計(jì)劃任務(wù)時(shí),獲取并記錄每個(gè)執(zhí)行主體每次執(zhí)行拉取廣告計(jì)劃任務(wù)的實(shí)時(shí)所需時(shí)長(zhǎng),以及每個(gè)時(shí)段的實(shí)時(shí)帶寬負(fù)載;
33、將獲取的每個(gè)執(zhí)行主體每次執(zhí)行拉取廣告計(jì)劃任務(wù)的實(shí)時(shí)所需時(shí)長(zhǎng)以及每個(gè)時(shí)段的實(shí)時(shí)帶寬負(fù)載輸入至所述分時(shí)段拉取耗時(shí)關(guān)系模型中,實(shí)時(shí)修正所述分時(shí)段拉取耗時(shí)關(guān)系模型;
34、根據(jù)修正后的分時(shí)段拉取耗時(shí)關(guān)系模型更新每個(gè)時(shí)段拉取所述廣告計(jì)劃的所需時(shí)長(zhǎng)。
35、另一方面,提供了一種執(zhí)行拉取廣告計(jì)劃任務(wù)裝置,所述裝置包括:
36、任務(wù)量獲取模塊,用于響應(yīng)于執(zhí)行拉取廣告計(jì)劃任務(wù)從媒體服務(wù)器拉取廣告計(jì)劃時(shí),獲取需要拉回的廣告計(jì)劃總數(shù),獲取要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng);
37、任務(wù)完成總時(shí)長(zhǎng)估算模塊,用于根據(jù)歷史數(shù)據(jù)獲取拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng),將所述需要拉回的廣告計(jì)劃總數(shù)乘以所述拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)獲得拉取所有廣告計(jì)劃的總時(shí)長(zhǎng);
38、任務(wù)主體個(gè)數(shù)計(jì)算模塊,用于根據(jù)所述要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng)以及所述拉取所有廣告計(jì)劃的總時(shí)長(zhǎng)獲取用于執(zhí)行拉取廣告計(jì)劃任務(wù)的最少任務(wù)主體個(gè)數(shù);
39、任務(wù)分配模塊,用于根據(jù)所述最少任務(wù)主體個(gè)數(shù)將所述廣告計(jì)劃分為多組,將每一組廣告計(jì)劃按序發(fā)送對(duì)應(yīng)的任務(wù)主體;
40、拉取任務(wù)執(zhí)行模塊,用于所述任務(wù)主體根據(jù)接收到所述廣告計(jì)劃的順序執(zhí)行拉取廣告計(jì)劃任務(wù)。
41、再一方面,提供了一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)以下步驟:
42、響應(yīng)于執(zhí)行拉取廣告計(jì)劃任務(wù)從媒體服務(wù)器拉取廣告計(jì)劃時(shí),獲取需要拉回的廣告計(jì)劃總數(shù),獲取要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng);
43、根據(jù)歷史數(shù)據(jù)獲取拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng),將所述需要拉回的廣告計(jì)劃總數(shù)乘以所述拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)獲得拉取所有廣告計(jì)劃的總時(shí)長(zhǎng);
44、根據(jù)所述要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng)以及所述拉取所有廣告計(jì)劃的總時(shí)長(zhǎng)獲取用于執(zhí)行拉取廣告計(jì)劃任務(wù)的最少任務(wù)主體個(gè)數(shù);
45、根據(jù)所述最少任務(wù)主體個(gè)數(shù)將所述廣告計(jì)劃分為多組,將每一組廣告計(jì)劃按序發(fā)送對(duì)應(yīng)的任務(wù)主體;
46、所述任務(wù)主體根據(jù)接收到所述廣告計(jì)劃的順序執(zhí)行拉取廣告計(jì)劃任務(wù)。
47、又一方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)以下步驟:
48、響應(yīng)于執(zhí)行拉取廣告計(jì)劃任務(wù)從媒體服務(wù)器拉取廣告計(jì)劃時(shí),獲取需要拉回的廣告計(jì)劃總數(shù),獲取要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng);
49、根據(jù)歷史數(shù)據(jù)獲取拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng),將所述需要拉回的廣告計(jì)劃總數(shù)乘以所述拉回每個(gè)廣告計(jì)劃的平均時(shí)長(zhǎng)獲得拉取所有廣告計(jì)劃的總時(shí)長(zhǎng);
50、根據(jù)所述要求拉回廣告計(jì)劃的限定總時(shí)長(zhǎng)以及所述拉取所有廣告計(jì)劃的總時(shí)長(zhǎng)獲取用于執(zhí)行拉取廣告計(jì)劃任務(wù)的最少任務(wù)主體個(gè)數(shù);
51、根據(jù)所述最少任務(wù)主體個(gè)數(shù)將所述廣告計(jì)劃分為多組,將每一組廣告計(jì)劃按序發(fā)送對(duì)應(yīng)的任務(wù)主體;
52、所述任務(wù)主體根據(jù)接收到所述廣告計(jì)劃的順序執(zhí)行拉取廣告計(jì)劃任務(wù)。
53、上述執(zhí)行拉取廣告計(jì)劃任務(wù)方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì),通過(guò)在執(zhí)行拉取廣告計(jì)劃任務(wù)時(shí)獲取能夠按時(shí)完成任務(wù)的最少任務(wù)主體個(gè)數(shù),而任務(wù)主體分散在媒體服務(wù)器中,且每一個(gè)任務(wù)主體處理一組廣告計(jì)劃,不會(huì)出現(xiàn)多個(gè)任務(wù)運(yùn)行在同一臺(tái)機(jī)器上會(huì)導(dǎo)致機(jī)器異常,從而使得機(jī)器不至于負(fù)載過(guò)高,并且?guī)捒梢跃鶆蚍植?,不至于出現(xiàn)波峰疊加的情況,減少了配置增加導(dǎo)致的資源浪費(fèi)。