本文作者:kaifamei

全量設備的消息推送方法、裝置、設備及存儲介質與流程

更新時間:2025-12-26 14:35:49 0條評論

全量設備的消息推送方法、裝置、設備及存儲介質與流程



1.本技術涉及消息推送技術領域,尤其涉及一種全量設備的消息推送方法、裝置、設備及存儲介質。


背景技術:



2.目前,互聯網應用的很多場景中,服務端需要給客戶端推送消息,現有的消息推送服務中,客戶端上報設備信息(例如,設備id)到服務端的設備圈選服務中,設備圈選服務記錄客戶端的設備信息。同時客戶端也會上報推送信息(例如,推送通道)到服務端的消息推送服務,消息推送服務會記錄客戶端的推送信息,當業務服務端發送消息推送時,會先到設備圈選服務去圈選需要推送消息的設備,然后再通過消息推送服務對圈選的全量設備進行消息推送。由于消息推送服務在推送消息時需要先圈選設備,而一個app上的全量設備通常很多,推送時會耗費比較長的時間在設備圈選上,且每次進行消息推送之前都需要圈選設備,導致重復操作浪費計算資源且消息推送不及時。


技術實現要素:



3.鑒于以上內容,本技術提供一種全量設備的消息推送方法、裝置、設備及存儲介質,其目的在于解決上述技術問題。
4.第一方面,本技術提供一種全量設備的消息推送方法,該方法包括:
5.接收業務方發送的全量推送請求;
6.遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;
7.根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;
8.向所述目標推送信息對應的設備推送消息。
9.優選地,在根據所述全量設備文件中執行去重操作后的目標設備id查詢多級存儲結構之前,所述方法還包括:
10.實時監測是否接收到客戶端上報的設備推送信息;
11.若是,獲取客戶端上報的設備推送信息,將客戶端上報的設備推送信息存儲至所述多級存儲結構的每一級存儲結構中。
12.優選地,所述根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息,包括:
13.根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息。
14.優選地,所述根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息,包括:
15.根據所述目標設備id查詢所述本地緩存,若在所述本地緩存中查詢得到所述目標
設備id的目標推送信息,則不查詢所述分布式緩存及所述數據庫;
16.若在所述本地緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述分布式緩存,若在所述分布式緩存中查詢得到所述目標設備id的目標推送信息,則不查詢所述數據庫;
17.若在所述分布式緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述數據庫,得到所述目標設備id的目標推送信息。
18.優選地,在對所述全量設備文件中的設備id執行去重操作之前,所述方法還包括:
19.實時監測是否接收到客戶端上報的設備推送信息;
20.若是,獲取客戶端上報的設備推送信息,并將客戶端上報的設備推送信息存儲至所述全量設備文件的增量文件中。
21.優選地,所述對所述全量設備文件中的設備id執行去重操作,包括:
22.篩選出所述全量設備文件的存量文件中與所述全量設備文件的增量文件中相同的設備id;
23.對所述相同的設備id執行去重操作。
24.優選地,所述設備推送信息包括設備id、推送通道和推送token。
25.第二方面,本技術提供一種全量設備的消息推送裝置,該全量設備的消息推送裝置包括:
26.接收模塊:用于接收業務方發送的全量推送請求;
27.遍歷模塊:用于遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;
28.查詢模塊:用于根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;
29.推送模塊:用于向所述目標推送信息對應的設備推送消息。
30.第三方面,本技術提供一種電子設備,包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;
31.存儲器,用于存放計算機程序;
32.處理器,用于執行存儲器上所存放的程序時,實現第一方面任一項實施例所述的全量設備的消息推送方法的步驟。
33.第四方面,提供了一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現如第一方面任一項實施例所述的全量設備的消息推送方法的步驟。
34.本技術實施例提供的上述技術方案與現有技術相比具有如下優點:
35.由于全量設備文件是定時掃描數據庫中的全量設備id后導入文件得到的,在推送消息時直接遍歷全量設備文件進行消息推送,不需要每次推送時都重復去圈選設備,節省了計算資源,且遍歷文件的速度比遍歷分布式數據庫的速度快很多,通過遍歷預先生成的全量設備文件,對全量設備文件中的設備id進行去重,使得全量設備文件中不存在相同的設備id,可以加快查詢速度,根據去重得到的目標設備id查詢多級存儲結構,避免僅是單一地查詢數據庫,可以更快地查詢到目標設備id對應的目標推送信息,再向目標推送信息對
應的設備推送消息,從而實現消息的及時推送。
附圖說明
36.此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本技術的實施例,并與說明書一起用于解釋本技術的原理。
37.為了更清楚地說明本技術實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,對于本領域普通技術人員而言,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
38.圖1為本技術全量設備的消息推送方法較佳實施例的流程示意圖;
39.圖2為本技術的多級存儲結構的示意圖;
40.圖3為本技術全量設備的消息推送裝置較佳實施例的模塊示意圖;
41.圖4為本技術電子設備較佳實施例的示意圖;
42.本技術目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。
具體實施方式
43.為了使本技術的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本技術進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本技術,并不用于限定本技術?;诒炯夹g中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本技術保護的范圍。
44.需要說明的是,本技術實施例之間的技術方案可以相互結合,但是必須是以本領域普通技術人員能夠實現為基礎,當技術方案的結合出現相互矛盾或無法實現時應當認為這種技術方案的結合不存在,也不在本發明要求的保護范圍之內。
45.本技術提供一種全量設備的消息推送方法。參照圖1所示,為本技術全量設備的消息推送方法的實施例的方法流程示意圖。該方法可以由一個電子設備(例如,服務器)執行,該電子設備可以由軟件和/或硬件實現。全量設備的消息推送方法包括:
46.步驟s10:接收業務方發送的全量推送請求;
47.步驟s20:遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;
48.步驟s30:根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;
49.步驟s40:向所述目標推送信息對應的設備推送消息。
50.本實施例中,通過定時掃描數據庫(例如,分布式數據庫)中的全量設備id后,將掃描到的全量設備id導入至文件中得到全量設備文件,推送消息的服務端在接收到業務方發送的全量推送請求時,即需要進行消息推送時,直接遍歷全量設備文件來進行消息推送,由于全量設備文件是定時掃描生成的,進行消息推送時不需要每次都重復去圈選設備,且遍歷文件的速度比遍歷分布式數據庫的速度快很多倍,通過遍歷預先生成全量設備文件,可以實現消息的及時推送。可以理解的是,由于數據庫中的設備id會不定時更新,通過定時掃描數據庫,生成的全量設備文件也會相應的更新。生成全量設備文件時僅選擇設備id有兩
方面原因,一是設備id的字段少,生成的全量設備文件占用的存儲空間會少,且可以減少生成文件的時長,二是客戶端的設備id是不會變化的,而token等推送信息是會變化的,因此在推送消息時通過設備id到多級存儲結構中查詢推送信息的速度會更快。
51.進一步地,在對所述全量設備文件中的設備id執行去重操作之前,所述方法還包括:
52.實時監測是否接收到客戶端上報的設備推送信息;
53.若是,獲取客戶端上報的設備推送信息,并將客戶端上報的設備推送信息存儲至所述全量設備文件的增量文件中。
54.由于客戶端不定時地會上報設備推送信息到服務端,客戶端上報的設備推送信息包括設備id、推送通道和推送token等,全量設備文件生成后,由于客戶端可能上報新的設備推送信息至服務端,因此可以實時監測是否接收到客戶端上報的設備推送信息,若客戶端上報了設備推送信息,則獲取客戶端上報的設備推送信息,并將客戶端上報的設備推送信息存儲至全量設備文件的增量文件中。需要說明的是,客戶端上報的設備推送信息也會寫入多級存儲結構中的每一級存儲結構中。
55.全量設備文件由存量文件和增量文件組成,存量文件存儲了掃描數據庫得到的設備id,增量文件存儲了客戶端新上報的設備推送信息中的設備id,由于存量文件的生成是定時觸發的,所以生成的存量文件和下次消息推送之間會有時間差,增量文件可以使得這個時間差內客戶端上傳的新的設備推送信息也被選中。全量消息推送前,會選擇當前的增量文件和存量文件作為總的全量設備文件,由于存量文件和增量文件中會存在重復的設備id,因此在消息推送前需要執行去重操作。
56.具體地,所述對所述全量設備文件中的設備id執行去重操作,包括:
57.篩選出所述全量設備文件的存量文件中與所述全量設備文件的增量文件中相同的設備id;
58.對所述相同的設備id執行去重操作。
59.篩選出存量文件中與增量文件中相同的設備id后,可以刪除存量文件中或者增量文件中的設備id,從而使得全量設備文件中不存在相同的設備id,在后續通過設備id查詢最新的設備推送信息時,加快查詢速度。
60.對全量設備文件中的設備id執行去重操作后得到的設備id,記為目標設備id,目標設備id表示需要接收推送消息的目標設備的id。根據目標設備id查詢多級存儲結構,可以得到目標設備id對應的目標推送信息,目標推送信息包括需要接收推送消息的目標設備對應的推送通道和推送token等,得到目標設備id對應的目標推送信息之后,可以向目標推送信息對應的設備推送相關的消息,例如,推送廣告信息、新聞信息及應用更新信息等。
61.多級存儲結構可以包括內存、緩存、數據庫、文件等多級存儲體系,優選地,本技術的多級存儲結構采用三級存儲結構,如圖2所示,為本技術的多級存儲結構示意圖,三級存儲結構的數據訪問速度從本地緩存、分布式緩存、分布式數據庫的訪問速度遞減,數據存儲的有效期從分布式數據庫、分布式緩存、本地緩存的有效期遞增。全量設備文件可以是定時掃描分布式數據庫中的設備id后,將掃描到的設備id導入至文件中得到的。
62.由于在查詢多級存儲結構之前,客戶端可能上報新的設備推送信息至服務端,因此,在根據所述全量設備文件中執行去重操作后的目標設備id查詢多級存儲結構之前,所
述方法還包括:
63.實時監測是否接收到客戶端上報的設備推送信息;
64.若是,獲取客戶端上報的設備推送信息,將客戶端上報的設備推送信息存儲至所述多級存儲結構的每一級存儲結構中。
65.由于客戶端不定時地會上報設備推送信息到服務端,客戶端上報的設備推送信息包括設備id、推送通道和推送token等,根據全量設備文件中執行去重操作后的目標設備id查詢多級存儲結構之前,由于客戶端可能上報新的設備推送信息至服務端,因此可以實時監測是否接收到客戶端上報的設備推送信息,若客戶端上報了設備推送信息,則獲取客戶端上報的設備推送信息,將客戶端上報的設備推送信息存儲至本地緩存、分布式緩存及分布式數據庫中。
66.在一個實施例中,所述根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息,包括:
67.根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息。
68.由于服務端的本地緩存和分布式緩存中也存儲了一定的目標推送信息,因此依次查詢本地緩存、分布式緩存及所述數據庫,可以加快查詢速度,從而得到所有目標設備id對應的目標推送信息。需要說明的是,多級存儲結構中只有分布式數據庫中存儲了完整的目標推送信息。
69.具體地,所述根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息,包括:
70.根據所述目標設備id查詢所述本地緩存,若在所述本地緩存中查詢得到所述目標設備id的目標推送信息,則不查詢所述分布式緩存及所述數據庫;
71.若在所述本地緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述分布式緩存,若在所述分布式緩存中查詢得到所述目標設備id的目標推送信息,則不查詢所述數據庫;
72.若在所述分布式緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述數據庫,得到所述目標設備id的目標推送信息。
73.由于從本地緩存、分布式緩存、分布式數據庫的數據訪問速度依次遞減,因此可以依次查詢本地緩存、分布式緩存、分布式數據庫。例如,目標設備id包括id1、id2、id3
……
idn,先查詢本地緩存,若在本地緩存中查詢得到id2的目標推送信息,則在分布式緩存及分布式數據庫中不查詢id2,若在本地緩存中未查詢到id2的目標推送信息,則在分布式緩存中查詢id2的目標推送信息,若在分布式緩存查詢得到id2的目標推送信息,則在分布式數據庫中不查詢id2,若在分布式緩存中未查詢到id2的目標推送信息,則在分布式數據庫中查詢查詢id2的目標推送信息。從而可以更快地查詢得到所有目標設備id對應的目標推送信息。
74.參照圖3所示,為本技術全量設備的消息推送裝置100的功能模塊示意圖。
75.本技術所述全量設備的消息推送裝置100可以安裝于電子設備中。根據實現的功能,所述全量設備的消息推送裝置100可以包括接收模塊110、遍歷模塊1/20、查詢模塊130及推送模塊140。本技術所述模塊也可以稱之為單元,是指一種能夠被電子設備處理器所執
行,并且能夠完成固定功能的一系列計算機程序段,其存儲在電子設備的存儲器中。
76.在本實施例中,關于各模塊/單元的功能如下:
77.接收模塊110:用于接收業務方發送的全量推送請求;
78.遍歷模塊120:用于遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;
79.查詢模塊130:用于根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;
80.推送模塊140:用于向所述目標推送信息對應的設備推送消息。
81.在一個實施例中,遍歷模塊120還用于:
82.實時監測是否接收到客戶端上報的設備推送信息;
83.若是,獲取客戶端上報的設備推送信息,并將客戶端上報的設備推送信息存儲至所述全量設備文件的增量文件中。
84.在一個實施例中,所述設備推送信息包括設備id、推送通道和推送token。
85.在一個實施例中,所述對所述全量設備文件中的設備id執行去重操作,包括:
86.篩選出所述全量設備文件的存量文件中與所述全量設備文件的增量文件中相同的設備id;
87.對所述相同的設備id執行去重操作。
88.在一個實施例中,查詢模塊130還用于:
89.實時監測是否接收到客戶端上報的設備推送信息;
90.若是,獲取客戶端上報的設備推送信息,將客戶端上報的設備推送信息存儲至所述多級存儲結構的每一級存儲結構中。
91.在一個實施例中,所述根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息,包括:
92.根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息。
93.在一個實施例中,所述根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息,包括:
94.根據所述目標設備id查詢所述本地緩存,若在所述本地緩存中查詢得到所述目標設備id的目標推送信息,則不查詢所述分布式緩存及所述數據庫;
95.若在所述本地緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述分布式緩存,若在所述分布式緩存中查詢得到所述目標設備id的目標推送信息,則不查詢所述數據庫;
96.若在所述分布式緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述數據庫,得到所述目標設備id的目標推送信息。
97.參照圖3所示,為本技術電子設備1較佳實施例的示意圖。
98.該電子設備1包括但不限于:存儲器11、處理器12、顯示器13及通信接口14。所述電子設備1通過通信接口14連接網絡。其中,所述網絡可以是企業內部網(intranet)、互聯網(internet)、全球移動通訊系統(global system of mobile communication,gsm)、寬帶碼
分多址(wideband code division multiple access,wcdma)、4g網絡、5g網絡、藍牙(bluetooth)、wi-fi、通話網絡等無線或有線網絡。
99.其中,存儲器11至少包括一種類型的可讀存儲介質,所述可讀存儲介質包括閃存、硬盤、多媒體卡、卡型存儲器(例如,sd或dx存儲器等)、隨機訪問存儲器(ram)、靜態隨機訪問存儲器(sram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、可編程只讀存儲器(prom)、磁性存儲器、磁盤、光盤等。在一些實施例中,所述存儲器11可以是所述電子設備1的內部存儲單元,例如該電子設備1的硬盤或內存。在另一些實施例中,所述存儲器11也可以是所述電子設備1的外部存儲設備,例如該電子設備1配備的插接式硬盤,智能存儲卡(smart media card,smc),安全數字(secure digital,sd)卡,閃存卡(flash card)等。當然,所述存儲器11還可以既包括所述電子設備1的內部存儲單元也包括其外部存儲設備。本實施例中,存儲器11通常用于存儲安裝于所述電子設備1的操作系統和各類應用軟件,例如全量設備的消息推送程序10的程序代碼等。此外,存儲器11還可以用于暫時地存儲已經輸出或者將要輸出的各類數據。
100.處理器12在一些實施例中可以是中央處理器(central processing unit,cpu)、控制器、微控制器、微處理器、或其他數據處理芯片。該處理器12通常用于控制所述電子設備1的總體操作,例如執行數據交互或者通信相關的控制和處理等。本實施例中,所述處理器12用于運行所述存儲器11中存儲的程序代碼或者處理數據,例如運行全量設備的消息推送程序10的程序代碼等。
101.顯示器13可以稱為顯示屏或顯示單元。在一些實施例中顯示器13可以是led顯示器、液晶顯示器、觸控式液晶顯示器以及有機發光二極管(organic light-emitting diode,oled)觸摸器等。顯示器13用于顯示在電子設備1中處理的信息以及用于顯示可視化的工作界面。
102.通信接口14可選地可以包括標準的有線接口、無線接口(如wi-fi接口),該通信接口14通常用于在所述電子設備1與其它設備之間建立通信連接。
103.圖4僅示出了具有組件11-14以及全量設備的消息推送程序10的電子設備1,但是應理解的是,并不要求實施所有示出的組件,可以替代的實施更多或者更少的組件。
104.可選地,所述電子設備1還可以包括用戶接口,用戶接口可以包括顯示器(display),可選的用戶接口還可以包括標準的有線接口、無線接口。可選地,在一些實施例中,顯示器可以是led顯示器、液晶顯示器、觸控式液晶顯示器以及有機發光二極管(organic light-emitting diode,oled)觸摸器等。其中,顯示器也可以適當的稱為顯示屏或顯示單元,用于顯示在電子設備1中處理的信息以及用于顯示可視化的界面。
105.該電子設備1還可以包括射頻(radio frequency,rf)電路、傳感器和音頻電路等等,在此不再贅述。
106.在上述實施例中,處理器12執行存儲器11中存儲的全量設備的消息推送程序10時可以實現如下步驟:
107.接收業務方發送的全量推送請求;
108.遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;
109.根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;
110.向所述目標推送信息對應的設備推送消息。
111.所述存儲設備可以為電子設備1的存儲器11,也可以為與電子設備1通訊連接的其它存儲設備。
112.關于上述步驟的詳細介紹,請參照上述圖3關于全量設備的消息推送裝置100實施例的功能模塊圖以及圖1關于全量設備的消息推送方法實施例的流程圖的說明。
113.此外,本技術實施例還提出一種計算機可讀存儲介質,所述計算機可讀存儲介質可以是非易失性的,也可以是易失性的。該計算機可讀存儲介質可以是硬盤、多媒體卡、sd卡、閃存卡、smc、只讀存儲器(rom)、可擦除可編程只讀存儲器(eprom)、便攜式緊致盤只讀存儲器(cd-rom)、usb存儲器等等中的任意一種或者幾種的任意組合。所述計算機可讀存儲介質中包括存儲數據區和存儲程序區,存儲程序區存儲有全量設備的消息推送程序10,所述全量設備的消息推送程序10被處理器執行時實現如下操作:
114.接收業務方發送的全量推送請求;
115.遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;
116.根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;
117.向所述目標推送信息對應的設備推送消息。
118.本技術之計算機可讀存儲介質的具體實施方式與上述全量設備的消息推送方法的具體實施方式大致相同,在此不再贅述。
119.需要說明的是,上述本技術實施例序號僅僅為了描述,不代表實施例的優劣。并且本文中的術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、裝置、物品或者方法不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、裝置、物品或者方法所固有的要素。在沒有更多限制的情況下,由語句“包括一個
……”
限定的要素,并不排除在包括該要素的過程、裝置、物品或者方法中還存在另外的相同要素。
120.通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本技術的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在如上所述的一個存儲介質(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,電子裝置,或者網絡設備等)執行本技術各個實施例所述的方法。
121.以上僅為本技術的優選實施例,并非因此限制本技術的專利范圍,凡是利用本技術說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本技術的專利保護范圍內。

技術特征:


1.一種全量設備的消息推送方法,其特征在于,所述方法包括:接收業務方發送的全量推送請求;遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;向所述目標推送信息對應的設備推送消息。2.如權利要求1所述的全量設備的消息推送方法,其特征在于,在根據所述全量設備文件中執行去重操作后的目標設備id查詢多級存儲結構之前,所述方法還包括:實時監測是否接收到客戶端上報的設備推送信息;若是,獲取客戶端上報的設備推送信息,將客戶端上報的設備推送信息存儲至所述多級存儲結構的每一級存儲結構中。3.如權利要求1或2所述的全量設備的消息推送方法,其特征在于,所述根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息,包括:根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息。4.如權利要求3所述的全量設備的消息推送方法,其特征在于,所述根據所述目標設備id依次查詢本地緩存、分布式緩存及所述數據庫,得到所述目標設備id的目標推送信息,包括:根據所述目標設備id查詢所述本地緩存,若在所述本地緩存中查詢得到所述目標設備id的目標推送信息,則不查詢所述分布式緩存及所述數據庫;若在所述本地緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述分布式緩存,若在所述分布式緩存中查詢得到所述目標設備id的目標推送信息,則不查詢所述數據庫;若在所述分布式緩存中未查詢到所述目標設備id的目標推送信息,則根據所述目標設備id查詢所述數據庫,得到所述目標設備id的目標推送信息。5.如權利要求1所述的全量設備的消息推送方法,其特征在于,在對所述全量設備文件中的設備id執行去重操作之前,所述方法還包括:實時監測是否接收到客戶端上報的設備推送信息;若是,獲取客戶端上報的設備推送信息,并將客戶端上報的設備推送信息存儲至所述全量設備文件的增量文件中。6.如權利要求1或5所述的全量設備的消息推送方法,其特征在于,所述對所述全量設備文件中的設備id執行去重操作,包括:篩選出所述全量設備文件的存量文件中與所述全量設備文件的增量文件中相同的設備id;對所述相同的設備id執行去重操作。7.如權利要求5所述的全量設備的消息推送方法,其特征在于,所述設備推送信息包括設備id、推送通道和推送token。8.一種全量設備的消息推送裝置,其特征在于,所述裝置包括:
接收模塊:用于接收業務方發送的全量推送請求;遍歷模塊:用于遍歷預先生成的全量設備文件,對所述全量設備文件中的設備id執行去重操作得到目標設備id,其中,所述全量設備文件是通過定時掃描數據庫中的全量設備id后導入文件得到的;查詢模塊:用于根據所述目標設備id查詢多級存儲結構,得到目標設備id對應的目標推送信息;推送模塊:用于向所述目標推送信息對應的設備推送消息。9.一種電子設備,其特征在于,包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;存儲器,用于存放計算機程序;處理器,用于執行存儲器上所存放的程序時,實現權利要求1至7中任一項所述的全量設備的消息推送方法。10.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1至7中任一項所述全量設備的消息推送方法的步驟。

技術總結


本申請涉及一種全量設備的消息推送方法、裝置、設備及存儲介質。所述方法包括:接收業務方發送的全量推送請求,遍歷預先生成的全量設備文件,對全量設備文件中的設備ID執行去重操作得到目標設備ID,其中,全量設備文件是通過定時掃描數據庫中的全量設備ID后導入文件得到的,根據目標設備ID查詢多級存儲結構,得到目標設備ID對應的目標推送信息,向目標推送信息對應的設備推送消息。本申請不需要每次推送時都重復去圈選設備,節省了計算資源,可以更快地查詢到目標設備ID對應的目標推送信息,從而實現消息的及時推送。而實現消息的及時推送。而實現消息的及時推送。


技術研發人員:

周萬斌

受保護的技術使用者:

北京奇藝世紀科技有限公司

技術研發日:

2022.09.26

技術公布日:

2023/1/17


文章投稿或轉載聲明

本文鏈接:http://m.newhan.cn/zhuanli/patent-1-84010-0.html

來源:專利查詢檢索下載-實用文體寫作網版權所有,轉載請保留出處。本站文章發布于 2023-01-28 07:08:14

發表評論

驗證碼:
用戶名: 密碼: 匿名發表
評論列表 (有 條評論
,2人圍觀
參與討論