一種消息訂閱管理裝置及方法
【專利摘要】本發(fā)明公開一種消息訂閱管理裝置及方法,該消息訂閱管理裝置包括:接收模塊,用于接收消息創(chuàng)建者所創(chuàng)建的新消息;第一生成模塊,用于生成與所述新消息對應(yīng)的消息標(biāo)識;獲取模塊,用于獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識;以及存儲模塊,用于根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域,所述預(yù)設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂閱用戶標(biāo)識字段一一對應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字段中。本發(fā)明對消息明細存儲方式做了改進,大量減少了數(shù)據(jù)存儲量,減少了服務(wù)器與數(shù)據(jù)庫的壓力,并提高了服務(wù)器的整體性能。
【專利說明】
一種消息訂閱管理裝置及方法
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種消息訂閱管理裝置及方法。
【背景技術(shù)】
[0002] SNS(Social Networking Serivces,社交網(wǎng)絡(luò)服務(wù))通常具備日志、相冊、分享、群 組、心情、投票等多個功能模塊,通過插件機制及開放API (Application Programming Interface,應(yīng)用程序編程接口)還能擴展功能應(yīng)用。其中最重要的又是Feed(訂閱源,以下 簡稱為Feed)系統(tǒng),F(xiàn)eed是SNS類應(yīng)用的核心和最復(fù)雜的部分,例如,新浪微博中看到的我關(guān) 注的人的消息、人人網(wǎng)中的"新鮮事"個人訂閱的消息。Feed數(shù)據(jù)用于向用戶提供頻繁更新 的內(nèi)容,內(nèi)容發(fā)布者將Feed聯(lián)合(syndicate ),從而允許用戶訂閱它,收集可訪問的Feed的 集合被稱為聚合(aggregation),其通過因特網(wǎng)聚合器來實現(xiàn)。
[0003] 現(xiàn)有技術(shù)中,消息明細常規(guī)的存儲方式為逐條存儲,即每條消息都會針對每一個 訂閱用戶分別存儲一個消息明細,存儲字段至少包括訂閱用戶ID字段、消息ID字段。
[0004] 實際中,某明星會有幾十萬到幾百萬的粉絲關(guān)注。當(dāng)該明星產(chǎn)生和發(fā)送一條消息 時,其訂閱的所有粉絲均需要收到該條消息的提示,在服務(wù)器上就會由一條消息引發(fā)存儲 數(shù)以百萬計的消息明細。
[0005] 雖然有些Feed數(shù)據(jù)僅針對在線訂閱用戶進行消息明細存儲,但是,很多系統(tǒng)的在 線用戶數(shù)量都很大,因此存儲量也還是很巨大,給服務(wù)器帶來很大的壓力。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明要解決的技術(shù)問題在于,現(xiàn)有的消息明細存儲方式過于累贅,給服務(wù)器帶 來很大的壓力,針對該技術(shù)問題,本發(fā)明提供一種消息訂閱管理裝置及方法。
[0007] 為實現(xiàn)上述目的,本發(fā)明提供的一種消息訂閱管理裝置,該消息訂閱管理裝置包 括:
[0008] 接收模塊,用于接收消息創(chuàng)建者所創(chuàng)建的新消息;
[0009] 第一生成模塊,用于生成與所述新消息對應(yīng)的消息標(biāo)識;
[0010] 獲取模塊,用于獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識;
[0011] 存儲模塊,用于根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域,所 述預(yù)設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂閱用戶標(biāo)識字段一 一對應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字段中。
[0012] 在一些實施例中,上述消息訂閱管理裝置還包括第二生成模塊,用于根據(jù)所述消 息創(chuàng)建者的訂閱用戶的數(shù)量生成一條或多條消息明細,其中,所述消息明細包括:訂閱用戶 標(biāo)識和所述新消息的消息標(biāo)識;
[0013] 所述存儲模塊用于根據(jù)所述一條或多條消息明細,將所述新消息的消息標(biāo)識分別 存儲到與不同訂閱用戶相對應(yīng)的消息標(biāo)識數(shù)組字段中。
[0014] 在一些實施例中,上述消息訂閱管理裝置還包括創(chuàng)建模塊,用于在存儲空間中創(chuàng) 建所述預(yù)設(shè)存儲區(qū)域。
[0015] 在一些實施例中,上述消息訂閱管理裝置中的獲取模塊用于根據(jù)預(yù)設(shè)的消息創(chuàng)建 者標(biāo)識與訂閱用戶標(biāo)識之間的對應(yīng)關(guān)系,獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo) 識。
[0016] 在一些實施例中,上述消息訂閱管理裝置還包括;
[0017] 監(jiān)控模塊,用于監(jiān)控所述消息標(biāo)識數(shù)組字段中的消息標(biāo)識數(shù)量是否達到預(yù)設(shè)最大 值;
[0018] 刪除模塊,用于若所述監(jiān)控模塊的監(jiān)控結(jié)果為已達到預(yù)設(shè)最大值,則按照記錄的 時間順序,將記錄時間在前的至少一個消息標(biāo)識從所述消息標(biāo)識數(shù)組字段中刪除。
[0019] 本發(fā)明提供的一種消息訂閱管理方法包括:
[0020] 接收消息創(chuàng)建者所創(chuàng)建的新消息,并生成與所述新消息對應(yīng)的消息標(biāo)識;
[0021] 獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識;
[0022] 根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域;
[0023] 其中,所述預(yù)設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂 閱用戶標(biāo)識字段一一對應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字 段中。
[0024] 在一些實施例中,上述消息訂閱管理方法還包括:
[0025] 根據(jù)所述消息創(chuàng)建者的訂閱用戶的數(shù)量生成一條或多條消息明細,其中,所述消 息明細包括:訂閱用戶標(biāo)識和所述新消息的消息標(biāo)識;
[0026] 根據(jù)所述一條或多條消息明細,將所述新消息的消息標(biāo)識分別存儲到與不同訂閱 用戶相對應(yīng)的消息標(biāo)識數(shù)組字段中。
[0027]在一些實施例中,上述消息訂閱管理方法中,根據(jù)所述訂閱用戶標(biāo)識,將所述消息 標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域之前還包括:在存儲空間中創(chuàng)建所述預(yù)設(shè)存儲區(qū)域。
[0028]在一些實施例中,上述消息訂閱管理方法中,獲取所述消息創(chuàng)建者的訂閱用戶的 訂閱用戶標(biāo)識包括:根據(jù)預(yù)設(shè)的消息創(chuàng)建者標(biāo)識與訂閱用戶標(biāo)識之間的對應(yīng)關(guān)系,獲取所 述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識。
[0029] 在一些實施例中,上述消息訂閱管理方法還包括;
[0030] 監(jiān)控所述消息標(biāo)識數(shù)組字段中的消息標(biāo)識數(shù)量是否達到預(yù)設(shè)最大值;
[0031] 若達到預(yù)設(shè)最大值,則按照記錄的時間順序,將記錄時間在前的至少一個消息標(biāo) 識從所述消息標(biāo)識數(shù)組字段中刪除。
[0032] 本發(fā)明提出的消息訂閱管理裝置及方法,對消息明細存儲方式做了改進,在存儲 空間的預(yù)設(shè)存儲區(qū)域,一個訂閱用戶標(biāo)識字段對應(yīng)一個消息標(biāo)識數(shù)組字段,針對各個訂閱 用戶,將其訂閱的消息標(biāo)識都添加到對應(yīng)的消息標(biāo)識數(shù)組字段中,因此,針對每一個訂閱用 戶,僅存儲一條消息明細記錄。相當(dāng)于將現(xiàn)有的逐條存儲的方式,由行轉(zhuǎn)列,由原先指數(shù)級 別的消息明細存儲量,改變成與訂閱用戶數(shù)量一致條數(shù)的記錄。采用本發(fā)明能夠大量減少 數(shù)據(jù)存儲量,減少服務(wù)器與數(shù)據(jù)庫的壓力,并提高了服務(wù)器的整體性能。
【附圖說明】
[0033]下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中:
[0034] 圖1為本發(fā)明第一實施例提供的消息訂閱管理方法的流程圖;
[0035] 圖2為本發(fā)明第二實施例提供的消息訂閱管理方法細化流程圖;
[0036]圖3為本發(fā)明第三實施例提供的消息訂閱管理方法細化流程圖;
[0037]圖4為本發(fā)明第四實施例提供的消息訂閱管理裝置功能模塊的示意圖;
[0038]圖5為本發(fā)明第五實施例提供的消息訂閱管理裝置細化功能模塊的示意圖;
[0039] 圖6為實現(xiàn)本發(fā)明各個實施例一個可選的服務(wù)器的結(jié)構(gòu)示意圖。
【具體實施方式】
[0040] 應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。 [0041 ] 第一實施例
[0042]參照圖1,圖1為本發(fā)明第一實施例提供的消息訂閱管理方法的流程圖,消息訂閱 管理方法包括:
[0043] S201、接收消息創(chuàng)建者所創(chuàng)建的新消息,并生成與所述新消息對應(yīng)的消息標(biāo)識。
[0044] 例如某明星在新浪微博上生成并發(fā)布了一條微博,則作為一個新消息。服務(wù)器收 到這條消息事件后生成與該新消息對應(yīng)的消息標(biāo)識。
[0045] 消息標(biāo)識包括但不局限于:消息映射地址,通過映射地址可以獲取到該消息的內(nèi) 容。
[0046] S202、獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識。
[0047] 其中,訂閱用戶標(biāo)識包括但不局限于:訂閱用戶賬號、用戶名、預(yù)留的手機號、預(yù)留 的郵箱地址等等。
[0048] 獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識的方式包括但不局限于以下所 列舉的:
[0049] 方式一、根據(jù)預(yù)設(shè)的消息創(chuàng)建者標(biāo)識與訂閱用戶標(biāo)識之間的對應(yīng)關(guān)系,獲取所述 消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識。以新浪微博為例,某粉絲點擊關(guān)注某明星的微博 后,則服務(wù)器就會建立該明星的微博賬號與該粉絲的微博賬號之間的對應(yīng)關(guān)系,有多個粉 絲關(guān)注的,則可以以列表的形式保存該明星的微博賬號與各個粉絲的微博賬號之間的對應(yīng) 關(guān)系,該列表后續(xù)可以進行維護,包括刪除、添加等等。根據(jù)該對應(yīng)關(guān)系,獲取與消息創(chuàng)建者 標(biāo)識對應(yīng)的各個訂閱用戶標(biāo)識。
[0050] 方式二、臨時查詢該消息創(chuàng)建者的最近一條歷史消息的各個訂閱用戶的訂閱用戶 標(biāo)識,作為該消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識。
[0051] S203、根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域。
[0052]其中,所述預(yù)設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂 閱用戶標(biāo)識字段一一對應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字 段中。
[0053]在一些實施例中,在步驟S203之前,還包括:在存儲空間中創(chuàng)建該預(yù)設(shè)存儲區(qū)域。 該存儲空間可以是緩存,也可以是數(shù)據(jù)庫。一般地,可以將一小部分最新的數(shù)據(jù)保存至緩存 中,另一部分非最新的保存至數(shù)據(jù)庫中,可以持久化保存。該預(yù)設(shè)存儲區(qū)域可以以列表的形 式存在于緩存或數(shù)據(jù)庫中。
[0054]此外,在一些實施例中,還可以監(jiān)控預(yù)設(shè)存儲區(qū)域中的消息標(biāo)識數(shù)組字段中的消 息標(biāo)識數(shù)量是否達到預(yù)設(shè)最大值;若達到預(yù)設(shè)最大值,則按照記錄的時間順序,將記錄時間 在前的至少一個消息標(biāo)識從該消息標(biāo)識數(shù)組字段中刪除。這樣可以將每個訂閱用戶的消息 明細記錄大小保持在一個固定值下,確保存儲空間中的數(shù)據(jù)不會大量的增長。
[0055]本實施例中,每個訂閱用戶對應(yīng)一個訂閱用戶標(biāo)識字段和消息標(biāo)識數(shù)組字段,用 于進行消息明細的存儲,消息標(biāo)識數(shù)組字段中存儲一個或多個消息標(biāo)識,采用數(shù)據(jù)行轉(zhuǎn)列 的方式,由原先指數(shù)級別的消息明細條數(shù),改變成與在線用戶列表數(shù)量一致條數(shù)的記錄,大 量減少的數(shù)據(jù)保存的數(shù)量,減少的服務(wù)器與數(shù)據(jù)庫的存儲壓力,并提高服務(wù)器的整體性能。 對于某些SNS系統(tǒng),上述消息訂閱管理方法適用于在線訂閱用戶,對于其他SNS系統(tǒng),上述消 息訂閱管理方法可以適用于所有訂閱用戶,包括在線訂閱用戶和非在線訂閱用戶,各個SNS 系統(tǒng)的開發(fā)者可以根據(jù)實際情況選擇。
[0056] 第二實施例
[0057]參照圖2,圖2為本發(fā)明第二實施例提供的消息訂閱管理方法細化流程圖,本實施 例中,假設(shè)消息創(chuàng)建者A被訂閱用戶B和訂閱用戶C關(guān)注,在訂閱用戶B、訂閱用戶C觸發(fā)關(guān)注 時,服務(wù)器建立消息創(chuàng)建者A與訂閱用戶B、訂閱用戶C之間的對應(yīng)關(guān)系并存儲在存儲空間。 當(dāng)消息創(chuàng)建者A發(fā)布一條新消息時,進入以下步驟:
[0058] S301、接收消息創(chuàng)建者所創(chuàng)建的新消息,并生成與所述新消息對應(yīng)的消息標(biāo)識。
[0059] S302、根據(jù)預(yù)設(shè)的消息創(chuàng)建者標(biāo)識與訂閱用戶標(biāo)識之間的對應(yīng)關(guān)系,獲取消息創(chuàng) 建者的訂閱用戶的訂閱用戶標(biāo)識。
[0060] 本實施例中,根據(jù)事先建立的消息創(chuàng)建者A與訂閱用戶B、訂閱用戶C之間的對應(yīng)關(guān) 系,確定消息創(chuàng)建者A的訂閱用戶的訂閱用戶標(biāo)識包括:訂閱用戶B、訂閱用戶C。
[0061] S303、針對獲取到的各個訂閱用戶標(biāo)識,分別生成一條對應(yīng)的消息明細,該消息明 細包括訂閱用戶標(biāo)識和該新消息的消息標(biāo)識。
[0062] 由于消息創(chuàng)建者A的訂閱用戶的訂閱用戶標(biāo)識包括:訂閱用戶B、訂閱用戶C,那么 針對訂閱用戶B、訂閱用戶C,分別生成一條消息明細如下(假設(shè)消息發(fā)創(chuàng)建A發(fā)布的該條新 消息的消息標(biāo)識為消息4):
[0063] 訂閱用戶B消息4 [0064] 訂閱用戶C消息4
[0065] S304、根據(jù)生成的消息明細,將該新消息的消息標(biāo)識分別存儲到與不同訂閱用戶 標(biāo)識相對應(yīng)的消息標(biāo)識數(shù)組字段中,相應(yīng)地,清除生成的各個消息明細。
[0066] 本實施例中存儲后的預(yù)設(shè)存儲區(qū)域如表一所示。
[0067] 表一
[0069]根據(jù)表一,說明訂閱用戶B在消息4之前,還訂閱了消息1、消息2、消息3,消息1、消 息2、消息3和消息4均存儲在與訂閱用戶B對應(yīng)的消息標(biāo)識數(shù)組字段中。說明訂閱用戶C在消 息4之前,還訂閱了消息2、消息3,消息2、消息3和消息4均存儲在與訂閱用戶C對應(yīng)的消息標(biāo) 識數(shù)組字段中,訂閱用戶B、訂閱用戶C分別只有一條消息明細記錄。
[0070] 在本實施例中,還需要由另一定時任務(wù)程序進行消息標(biāo)識數(shù)組大小的監(jiān)控操作。 每隔一定時間監(jiān)控消息標(biāo)識數(shù)組字段中的消息標(biāo)識數(shù)量是否達到預(yù)設(shè)最大值,若達到預(yù)設(shè) 最大值,則按照記錄的時間順序,將記錄時間在前的至少一個個消息標(biāo)識字段從消息標(biāo)識 數(shù)組字段中刪除,保證每個用戶的消明細存儲量在一個固定值下,確保存儲空間的數(shù)據(jù)量 不會大量的增長。
[0071] 本實施例與第一實施例相比,步驟S302獲取各個訂閱用戶標(biāo)識之后,還包括針對 該各個訂閱用戶標(biāo)識,分別生成對應(yīng)的消息明細的步驟,再根據(jù)對應(yīng)的消息明細將消息標(biāo) 識存儲到對應(yīng)的消息標(biāo)識數(shù)組字段中。實際應(yīng)用中可根據(jù)需要,省去或保留生成消息明細 的步驟。不論中間是否生成明細,在消息明細存儲環(huán)節(jié),針對每個訂閱用戶標(biāo)識,將新消息 的消息標(biāo)識存儲到對應(yīng)的消息標(biāo)識數(shù)組字段中。節(jié)省了大量的數(shù)據(jù)存儲空間。
[0072] 第三實施例
[0073]參照圖3,圖3為本發(fā)明第三實施例提供的消息訂閱管理方法細化流程圖,
[0074] S401、維護在線用戶列表。
[0075]當(dāng)用戶APP打開使用時,將由APP觸發(fā)事件接口,由服務(wù)器記錄該用戶至在線用戶 列表中。當(dāng)在線用戶列表無該用戶信息時,則新增處理,如已經(jīng)存在,則進行更新處理。 [0076] S402、維護在線用戶個人收件箱。
[0077]每個在線用戶均有一個個人收件箱,由后臺服務(wù)器進行維護,其個人訂閱的消息 明細將會發(fā)送至該個人收件箱中。
[0078] S403、當(dāng)某明星發(fā)帖或者產(chǎn)生微博消息時,針對該條新消息產(chǎn)生與在線用戶數(shù)量 一致的消息明細,發(fā)送個人消息明細至個人收件箱中。
[0079] S404、維護在線用戶的個人收件箱,一小部分最新的數(shù)據(jù)保存至緩存中,另一部分 非最新數(shù)據(jù)保存至數(shù)據(jù)庫中,持久化保存。
[0080] S405、當(dāng)有消息明細發(fā)送至個人收件箱時,程序首先查詢出該條消息明細對應(yīng)的 訂閱用戶標(biāo)識出來,之后添加消息標(biāo)識至該訂閱用戶標(biāo)識的消息標(biāo)識數(shù)組字段中,相應(yīng)地, 清除前面步驟S403生成的消息明細。可以采用mongodb(分布式文檔存儲數(shù)據(jù)庫)或者其他 類似的非關(guān)系型的數(shù)據(jù)庫來存儲消息明細,其主要保存格式為訂閱用戶標(biāo)識字段、消息標(biāo) 識數(shù)組字段為一條記錄的方式。
[0081] 在本實施例的上述步驟過程中,由另一定時任務(wù)程序進行數(shù)組大小的監(jiān)控操作。 每隔一定時間查詢出超出規(guī)定消息數(shù)量的消息標(biāo)識數(shù)組,彈出這些消息標(biāo)識數(shù)組列表中的 最后一位至幾位信息,保證每個人的個人收件箱大小保持在一個固定值下,確保存儲空間 的數(shù)據(jù)量不會大量的增長。
[0082] 此時,已經(jīng)實現(xiàn)了采用數(shù)據(jù)列來保存數(shù)據(jù)的方式,即使用數(shù)組保存的方式來保存 消息明細,與之前的一條消息為一條記錄的方式相比,節(jié)省了大量的數(shù)據(jù)存儲空間。本實施 例針對每一個訂閱用戶,僅有一條消息明細記錄,將其訂閱的消息標(biāo)識都添加到一個消息 標(biāo)識數(shù)組中,明顯區(qū)別于現(xiàn)有的逐條記錄的方式,大量減少了數(shù)據(jù)記錄量,減少了服務(wù)器與 數(shù)據(jù)庫的壓力。
[0083] 第四實施例
[0084]參照圖4,圖4為本發(fā)明第四實施例提供的消息訂閱管理裝置功能模塊的示意圖, 消息訂閱管理裝置包括:
[0085] 接收模塊51,用于接收消息創(chuàng)建者所創(chuàng)建的消息;
[0086] 第一生成模塊52,用于生成與所述新消息對應(yīng)的消息標(biāo)識;
[0087] 獲取模塊53,用于獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識;
[0088] 存儲模塊54,用于根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域, 所述預(yù)設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂閱用戶標(biāo)識字段 一一對應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字段中。
[0089] 進一步地,獲取模塊53用于根據(jù)預(yù)設(shè)的消息創(chuàng)建者標(biāo)識與訂閱用戶標(biāo)識之間的對 應(yīng)關(guān)系,獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識。
[0090] 應(yīng)理解,本發(fā)明實施例的消息訂閱管理裝置與上述消息訂閱管理方法相對應(yīng),在 此,不再贅述。
[0091] 本實施例的消息訂閱管理裝置對消息明細存儲方式做了改進,針對每一個訂閱用 戶,僅有一條消息明細記錄,即一個消息標(biāo)識數(shù)組字段,將其訂閱的消息標(biāo)識都添加到該消 息標(biāo)識數(shù)組字段中,大量減少了數(shù)據(jù)存儲量,減少了服務(wù)器與數(shù)據(jù)庫的壓力,并提高了服務(wù) 器的整體性能。
[0092] 第五實施例
[0093]參照圖5,圖5為本發(fā)明第五實施例提供的消息訂閱管理裝置細化功能模塊的示意 圖,該消息訂閱管理裝置包括:
[0094]接收模塊61,用于接收消息創(chuàng)建者所創(chuàng)建的新消息;
[0095]第一生成模塊62,用于生成與所述新消息對應(yīng)的消息標(biāo)識;
[0096]獲取模塊63,用于獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識;
[0097]第二生成模塊64,用于根據(jù)所述消息創(chuàng)建者的訂閱用戶的數(shù)量生成一條或多條消 息明細,其中,所述消息明細包括:訂閱用戶標(biāo)識和所述新消息的消息標(biāo)識;
[0098]存儲模塊65,用于根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域, 所述預(yù)設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂閱用戶標(biāo)識字段 一一對應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字段中;具體地,根 據(jù)所述一條或多條消息明細,將所述新消息的消息標(biāo)識分別存儲到與不同訂閱用戶相對應(yīng) 的消息標(biāo)識數(shù)組字段中。
[0099 ]創(chuàng)建模塊66,用于在存儲空間中創(chuàng)建所述預(yù)設(shè)存儲區(qū)域。
[0100]監(jiān)控模塊67,用于監(jiān)控所述消息標(biāo)識數(shù)組字段中的消息標(biāo)識數(shù)量是否達到預(yù)設(shè)最 大值;
[0101]刪除模塊68,用于若所述監(jiān)控模塊67的監(jiān)控結(jié)果為已達到預(yù)設(shè)最大值,則按照記 錄的時間順序,將記錄時間在前的至少一個消息標(biāo)識從所述消息標(biāo)識數(shù)組字段中刪除。
[0102] 進一步地,獲取模塊63用于根據(jù)預(yù)設(shè)的消息創(chuàng)建者標(biāo)識與訂閱用戶標(biāo)識之間的對 應(yīng)關(guān)系,獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識。
[0103] 本實施例的消息訂閱管理裝置包括監(jiān)控模塊67和刪除模塊68,可以對消息標(biāo)識數(shù) 組的大小進行監(jiān)控,保證每個人的個人收件箱大小保持在一個固定值下,確保數(shù)據(jù)庫的存 儲空間不會大量的增長。還包括第二生成模塊64,實際應(yīng)用中可根據(jù)需要省去或保留第二 生成模塊64。
[0104] 本發(fā)明還提供一種服務(wù)器,如圖6所示,為實現(xiàn)本發(fā)明各個實施例一個可選的服務(wù) 器的結(jié)構(gòu)示意圖,該服務(wù)器至少包括:輸入輸出(10)總線11、處理器12、存儲器13、內(nèi)存14和 通信裝置15。其中,
[0105] 輸入輸出(10)總線11分別與自身所屬的服務(wù)器的其它部件(處理器12、存儲器13、 內(nèi)存14和通信裝置15)連接,并且為其它部件提供傳送線路。
[0106] 處理器12通常控制自身所屬的服務(wù)器的總體操作。例如,處理器12執(zhí)行計算和確 認等操作。其中,處理器12可以是中央處理器(CPU)。
[0107]通信裝置15,通常包括一個或多個組件,其允許自身所屬的服務(wù)器與無線通信系 統(tǒng)或網(wǎng)絡(luò)之間的無線電通信。
[0108] 存儲器13存儲處理器可讀、處理器可執(zhí)行的軟件代碼,其包含用于控制處理器12 執(zhí)行本文描述的功能的指令(即軟件執(zhí)行功能)。
[0109] 其中,本發(fā)明提供的消息訂閱管理裝置中,接收模塊的功能可以通過通信裝置15 來實現(xiàn),第一生成模塊、獲取模塊、第二生成模塊、創(chuàng)建模塊、監(jiān)控模塊、刪除模塊的功能可 以通過處理器12來實現(xiàn),存儲模塊的功能可以通過存儲器13或內(nèi)存14來實現(xiàn)。本發(fā)明提供 的服務(wù)器,處理器12事先在存儲器13或內(nèi)存14中創(chuàng)建預(yù)設(shè)存儲區(qū)域,該預(yù)設(shè)存儲區(qū)域包括 與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂閱用戶標(biāo)識字段一一對應(yīng)的消息標(biāo)識數(shù) 組字段,當(dāng)消息創(chuàng)建者在自己的計算機上創(chuàng)建新消息后,由通信裝置15接收該消息創(chuàng)建者 所創(chuàng)建的消息,之后,由處理器12生成與該新消息對應(yīng)的消息標(biāo)識,并從存儲器13或內(nèi)存14 中獲取消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識,根據(jù)該消息創(chuàng)建者的訂閱用戶的數(shù)量生成 一條或多條消息明細,其中,所述消息明細包括:訂閱用戶標(biāo)識和該新消息的消息標(biāo)識,存 儲器13或內(nèi)存14根據(jù)該訂閱用戶標(biāo)識,將該消息標(biāo)識存儲到該預(yù)設(shè)存儲區(qū)域,該消息標(biāo)識 存儲于該預(yù)設(shè)存儲區(qū)域的消息標(biāo)識數(shù)組字段中,具體地,根據(jù)所述一條或多條消息明細,將 該新消息的消息標(biāo)識分別存儲到與不同訂閱用戶相對應(yīng)的消息標(biāo)識數(shù)組字段中。處理器12 還監(jiān)控消息標(biāo)識數(shù)組字段中的消息標(biāo)識數(shù)量是否達到預(yù)設(shè)最大值,若已達到預(yù)設(shè)最大值, 則按照記錄的時間順序,將記錄時間在前的至少一個消息標(biāo)識從消息標(biāo)識數(shù)組字段中刪 除。
[0110]需要說明的是,在本文中,術(shù)語"包括"、"包含"或者其任何其他變體意在涵蓋非排 他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而 且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有 的要素。在沒有更多限制的情況下,由語句"包括一個……"限定的要素,并不排除在包括該 要素的過程、方法、物品或者裝置中還存在另外的相同要素。
[0111]上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
[0112] 通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實施例方 法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下 前者是更佳的實施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做 出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì) (如R0M/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機,計算機,月艮 務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。
[0113] 上面結(jié)合附圖對本發(fā)明的實施例進行了描述,但是本發(fā)明并不局限于上述的具體 實施方式,上述的【具體實施方式】僅僅是示意性的,而不是限制性的,本領(lǐng)域的普通技術(shù)人員 在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨和權(quán)利要求所保護的范圍情況下,還可做出很多 形式,這些均屬于本發(fā)明的保護之內(nèi)。
【主權(quán)項】
1. 一種消息訂閱管理裝置,其特征在于,包括: 接收模塊,用于接收消息創(chuàng)建者所創(chuàng)建的新消息; 第一生成模塊,用于生成與所述新消息對應(yīng)的消息標(biāo)識; 獲取模塊,用于獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識; 存儲模塊,用于根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域,所述預(yù) 設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂閱用戶標(biāo)識字段一一對 應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字段中。2. 如權(quán)利要求1所述的消息訂閱管理裝置,其特征在于,還包括第二生成模塊,用于根 據(jù)所述消息創(chuàng)建者的訂閱用戶的數(shù)量生成一條或多條消息明細,其中,所述消息明細包括: 訂閱用戶標(biāo)識和所述新消息的消息標(biāo)識; 所述存儲模塊用于根據(jù)所述一條或多條消息明細,將所述新消息的消息標(biāo)識分別存儲 到與不同訂閱用戶相對應(yīng)的消息標(biāo)識數(shù)組字段中。3. 如權(quán)利要求1所述的消息訂閱管理裝置,其特征在于,還包括創(chuàng)建模塊,用于在存儲 空間中創(chuàng)建所述預(yù)設(shè)存儲區(qū)域。4. 如權(quán)利要求1所述的消息訂閱管理裝置,其特征在于,所述獲取模塊用于根據(jù)預(yù)設(shè)的 消息創(chuàng)建者標(biāo)識與訂閱用戶標(biāo)識之間的對應(yīng)關(guān)系,獲取所述消息創(chuàng)建者的訂閱用戶的訂閱 用戶標(biāo)識。5. 如權(quán)利要求1至4任一項所述的消息訂閱管理裝置,其特征在于,還包括; 監(jiān)控模塊,用于監(jiān)控所述消息標(biāo)識數(shù)組字段中的消息標(biāo)識數(shù)量是否達到預(yù)設(shè)最大值; 刪除模塊,用于若所述監(jiān)控模塊的監(jiān)控結(jié)果為已達到預(yù)設(shè)最大值,則按照記錄的時間 順序,將記錄時間在前的至少一個消息標(biāo)識從所述消息標(biāo)識數(shù)組字段中刪除。6. -種消息訂閱管理方法,其特征在于,包括: 接收消息創(chuàng)建者所創(chuàng)建的新消息,并生成與所述新消息對應(yīng)的消息標(biāo)識; 獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識; 根據(jù)所述訂閱用戶標(biāo)識,將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域; 其中,所述預(yù)設(shè)存儲區(qū)域包括與訂閱用戶相對應(yīng)的訂閱用戶標(biāo)識字段,以及與訂閱用 戶標(biāo)識字段一一對應(yīng)的消息標(biāo)識數(shù)組字段,所述消息標(biāo)識存儲于所述消息標(biāo)識數(shù)組字段 中。7. 根據(jù)權(quán)利要求6所述的消息訂閱管理方法,其特征在于,所述方法還包括: 根據(jù)所述消息創(chuàng)建者的訂閱用戶的數(shù)量生成一條或多條消息明細,其中,所述消息明 細包括:訂閱用戶標(biāo)識和所述新消息的消息標(biāo)識; 根據(jù)所述一條或多條消息明細,將所述新消息的消息標(biāo)識分別存儲到與不同訂閱用戶 相對應(yīng)的消息標(biāo)識數(shù)組字段中。8. 如權(quán)利要求6所述的消息訂閱管理方法,其特征在于,所述根據(jù)所述訂閱用戶標(biāo)識, 將所述消息標(biāo)識存儲到預(yù)設(shè)存儲區(qū)域之前還包括: 在存儲空間中創(chuàng)建所述預(yù)設(shè)存儲區(qū)域。9. 如權(quán)利要求6所述的消息訂閱管理方法,其特征在于,所述獲取所述消息創(chuàng)建者的訂 閱用戶的訂閱用戶標(biāo)識包括:根據(jù)預(yù)設(shè)的消息創(chuàng)建者標(biāo)識與訂閱用戶標(biāo)識之間的對應(yīng)關(guān) 系,獲取所述消息創(chuàng)建者的訂閱用戶的訂閱用戶標(biāo)識。10.如權(quán)利要求6至9任一項所述的消息訂閱管理方法,其特征在于,還包括; 監(jiān)控所述消息標(biāo)識數(shù)組字段中的消息標(biāo)識數(shù)量是否達到預(yù)設(shè)最大值; 若達到預(yù)設(shè)最大值,則按照記錄的時間順序,將記錄時間在前的至少一個消息標(biāo)識從 所述消息標(biāo)識數(shù)組字段中刪除。
【文檔編號】G06F17/30GK106095789SQ201610368133
【公開日】2016年11月9日
【申請日】2016年5月26日
【發(fā)明人】林偉
【申請人】努比亞技術(shù)有限公司