本技術(shù)涉及業(yè)務(wù)系統(tǒng)消息推送,尤其涉及一種消息優(yōu)先級的動態(tài)調(diào)整方法、裝置及設(shè)備。
背景技術(shù):
1、目前,各類業(yè)務(wù)系統(tǒng)推送消息時,需要通過消息推送調(diào)度系統(tǒng)對推送的消息進(jìn)行調(diào)度。相關(guān)技術(shù)中,消息推送調(diào)度系統(tǒng)先通過網(wǎng)關(guān)服務(wù)端接收用戶發(fā)送的消息請求,再發(fā)送到服務(wù)端消息隊列進(jìn)行緩存,然后第三方消息推送集群從消息隊列獲取消息進(jìn)行解析,能夠根據(jù)消息類型獲取接收者信息,進(jìn)而根據(jù)優(yōu)先級調(diào)度算法調(diào)整消息發(fā)送優(yōu)先級。
2、然而,相關(guān)技術(shù)中的消息發(fā)送優(yōu)先級的調(diào)整策略,調(diào)整的判斷維度較為單一,比如,僅針對消息類型這一種因素調(diào)整發(fā)送順序,導(dǎo)致優(yōu)先級調(diào)度結(jié)果可能不符合實際需要。并且,上述調(diào)整策略只能在資源不夠時候切換發(fā)送節(jié)點,導(dǎo)致消息發(fā)送資源的利用率較低,造成了部分資源的浪費。
技術(shù)實現(xiàn)思路
1、本技術(shù)旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問題之一。
2、為此,本技術(shù)的第一個目的在于提出一種消息優(yōu)先級的動態(tài)調(diào)整方法,該方法能夠根據(jù)多個判斷維度動態(tài)調(diào)整消息的優(yōu)先級,并實現(xiàn)消息發(fā)送資源的共享,提高了消息優(yōu)先級調(diào)整的準(zhǔn)確性和資源利用率。
3、本技術(shù)的第二個目的在于提出一種消息優(yōu)先級的動態(tài)調(diào)整裝置;
4、本技術(shù)的第三個目的在于提出一種電子設(shè)備;
5、本技術(shù)的第四個目的在于提出一種計算機(jī)可讀存儲介質(zhì)。
6、為達(dá)上述目的,本技術(shù)的第一方面在于提出一種消息優(yōu)先級的動態(tài)調(diào)整方法,該方法包括以下步驟:
7、接收業(yè)務(wù)系統(tǒng)發(fā)送的多種類型的消息,并按照消息類型將每種消息發(fā)送至對應(yīng)的消息隊列;
8、將各個消息發(fā)送節(jié)點的消息發(fā)送資源集中納入至共享資源池,基于資源動態(tài)分配算法,從所述共享資源池中為每個消費者節(jié)點動態(tài)分配初始處理資源,其中,所述消費者節(jié)點與所述消息隊列中的消息對應(yīng);
9、根據(jù)所述初始處理資源對每個消息進(jìn)行處理,并在處理過程中實時采集每個消息對應(yīng)的多個調(diào)整配置項的參數(shù)值,根據(jù)所述多個調(diào)整配置項的參數(shù)值判斷是否對各個消息進(jìn)行優(yōu)先級動態(tài)調(diào)整;
10、對于調(diào)整得到的高優(yōu)先級消息,增加所述高優(yōu)先級消息對應(yīng)的消費者節(jié)點的處理資源。
11、可選地,根據(jù)本技術(shù)的一個實施方式,所述從所述共享資源池中為每個消費者節(jié)點動態(tài)分配初始處理資源,包括:構(gòu)建所述共享資源池的初始配置數(shù)據(jù),以使不同的消息發(fā)送程序共享所述共享資源池中的資源;根據(jù)所述初始配置數(shù)據(jù)和每個消息對應(yīng)的業(yè)務(wù)狀況,確定為每個消息對應(yīng)的消費者節(jié)點分配的所述初始處理資源。
12、可選地,根據(jù)本技術(shù)的一個實施方式,所述構(gòu)建所述共享資源池的初始配置數(shù)據(jù),包括:構(gòu)建短信消費者配置和信息對象定義iod賬號資源配置;其中,所述iod賬號資源配置包括iod賬號名稱、賬號配置和賬號歸屬的資源組,所述iod賬號資源配置用于將不同的iod賬號歸屬至所述共享資源池;所述短信消費者配置包括消費者名稱、消費者詳細(xì)配置和消費者組,所述短信消費者配置用于將消費者程序與iod賬號資源組關(guān)聯(lián)。
13、可選地,根據(jù)本技術(shù)的一個實施方式,所述根據(jù)所述初始配置數(shù)據(jù)和每個消息對應(yīng)的業(yè)務(wù)狀況,確定為每個消息對應(yīng)的消費者節(jié)點分配的所述初始處理資源,包括:將所述初始配置數(shù)據(jù)加載至內(nèi)存庫中,為當(dāng)前待處理的目標(biāo)消費者節(jié)點配置分布式鎖;根據(jù)當(dāng)前待處理消息對應(yīng)的峰值業(yè)務(wù)量計算所需的并發(fā)連接數(shù),并從所述內(nèi)存庫中讀取所述iod賬號資源組中的共享連接數(shù),通過比較所述并發(fā)連接數(shù)與所述共享連接數(shù)判斷資源配額是否充足;在所述資源配額充足的情況下,為所述目標(biāo)標(biāo)消費者節(jié)點分配相應(yīng)的初始處理資源,并更新所述內(nèi)存庫中的處理資源分配信息,釋放所述分布式鎖;在所述資源配額不充足的情況下,重新申請iod賬號和對應(yīng)的連接數(shù),并將重新申請的iod賬號和對應(yīng)的連接數(shù)添加至所述iod賬號資源組中,重新進(jìn)行資源配額判斷。
14、可選地,根據(jù)本技術(shù)的一個實施方式,所述多個調(diào)整配置項,包括:默認(rèn)優(yōu)先級、業(yè)務(wù)時效敏感性、消息隊列積壓狀況、iod賬號資源空閑狀況和最終用戶接收策略,所述根據(jù)所述多個調(diào)整配置項的參數(shù)值判斷是否對各個消息進(jìn)行優(yōu)先級動態(tài)調(diào)整,包括:基于每個所述調(diào)整配置項的參數(shù)值和預(yù)設(shè)權(quán)重,對所述多個調(diào)整配置項進(jìn)行加權(quán)運算,獲得加權(quán)值;將所述加權(quán)值與預(yù)設(shè)的調(diào)整閾值進(jìn)行比較,將所述加權(quán)值大于所述調(diào)整閾值的消息的優(yōu)先級調(diào)整為高優(yōu)先級。
15、可選地,根據(jù)本技術(shù)的一個實施方式,所述增加所述高優(yōu)先級消息對應(yīng)的消費者節(jié)點的處理資源,包括:向服務(wù)平臺發(fā)送增加所述高優(yōu)先級消息的最小部署單元pod的請求,通過所述服務(wù)平臺動態(tài)增加所述高優(yōu)先級消息對應(yīng)的消費者處理節(jié)點的pod副本數(shù),并鎖定所述消費者處理節(jié)點的iod賬號連接數(shù);在所述高優(yōu)先級消息的優(yōu)先級下降后,通過所述服務(wù)平臺減少所述消費者處理節(jié)點的pod副本數(shù),并釋放所述消費者處理節(jié)點的iod賬號連接數(shù)資源。
16、可選地,根據(jù)本技術(shù)的一個實施方式,所述接收業(yè)務(wù)系統(tǒng)發(fā)送的多種類型的消息,包括:通過實時接口調(diào)用的方式,接受實時接口調(diào)用消息數(shù)據(jù),并通過文件掃描程序獲取目錄文件數(shù)據(jù);在所述將每種消息發(fā)送至對應(yīng)的消息隊列之前,還包括:對所述多種類型的消息進(jìn)行加密處理,根據(jù)加密結(jié)果判斷所述多種類型的消息是否通過鑒權(quán)。
17、為達(dá)上述目的,本技術(shù)的第二方面還提出了一種消息優(yōu)先級的動態(tài)調(diào)整裝置,包括以下模塊:
18、接收模塊,用于接收業(yè)務(wù)系統(tǒng)發(fā)送的多種類型的消息,并按照消息類型將每種消息發(fā)送至對應(yīng)的消息隊列;
19、第一分配模塊,用于將各個消息發(fā)送節(jié)點的消息發(fā)送資源集中納入至共享資源池,基于資源動態(tài)分配算法,從所述共享資源池中為每個消費者節(jié)點動態(tài)分配初始處理資源,其中,所述消費者節(jié)點與所述消息隊列中的消息對應(yīng);
20、動態(tài)調(diào)整模塊,用于根據(jù)所述初始處理資源對每個消息進(jìn)行處理,并在處理過程中實時采集每個消息對應(yīng)的多個調(diào)整配置項的參數(shù)值,根據(jù)所述多個調(diào)整配置項的參數(shù)值判斷是否對各個消息進(jìn)行優(yōu)先級動態(tài)調(diào)整;
21、第二分配模塊,用于對于調(diào)整得到的高優(yōu)先級消息,增加所述高優(yōu)先級消息對應(yīng)的消費者節(jié)點的處理資源。
22、為達(dá)上述目的,本技術(shù)第三方面還提出了一種電子設(shè)備,包括:
23、處理器;
24、用于存儲所述處理器可執(zhí)行指令的存儲器;
25、其中,所述處理器被配置為執(zhí)行所述指令,以實現(xiàn)如上述第一方面中任一項所述的消息優(yōu)先級的動態(tài)調(diào)整方法。
26、為達(dá)上述目的,本技術(shù)第四方面還提出了一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序,計算機(jī)程序被處理器執(zhí)行時實現(xiàn)上述第一方面中任一項所述的消息優(yōu)先級的動態(tài)調(diào)整方法。
27、本技術(shù)的實施例提供的技術(shù)方案至少帶來以下有益效果:本技術(shù)的消息發(fā)送優(yōu)先級調(diào)整策略中,可以動態(tài)添加調(diào)整配置項并獲取實時的配置項參數(shù)值,通過對配置項參數(shù)值采取加權(quán)算法,判斷實時消息發(fā)送是否存在業(yè)務(wù)瓶頸,從而動態(tài)調(diào)整消息模版的優(yōu)先級。通過優(yōu)先級調(diào)度程序增加高優(yōu)先級消息對應(yīng)的消費者節(jié)點處理資源,包括調(diào)整融合網(wǎng)關(guān)資源池連接數(shù)和并發(fā)數(shù)等,實現(xiàn)了保障高峰期時高優(yōu)先級消息匹配高級資源,低優(yōu)先級短信匹配普通資源,從而可以保障業(yè)務(wù)的連續(xù)性和及時率,提高用戶的滿意度。并且,本技術(shù)還通過資源分配算法將分散的消息發(fā)送資源集中到統(tǒng)一的共享資源池,不同發(fā)送程序可以共享資源池的資源,閑置的iod連接可以在繁忙時利用,可以避免部分發(fā)送節(jié)點繁忙,部分發(fā)送節(jié)點空閑情況,提高了稀缺it資源利用率,有利于最大化業(yè)務(wù)消息的送達(dá)率和時效性。由此,本技術(shù)能夠根據(jù)多個判斷維度動態(tài)調(diào)整消息的優(yōu)先級,并實現(xiàn)消息發(fā)送資源的共享,提高了消息優(yōu)先級調(diào)整的準(zhǔn)確性和資源利用率。
28、本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。