一種電子論壇的信息發(fā)布方法
【專利摘要】本發(fā)明公開了一種電子論壇的信息發(fā)布方法。該方法包括:服務器根據(jù)終端的請求創(chuàng)建一個帖子并維持一個與該帖子對應的固定長度的消息隊列;當其它終端初次訪問該帖子時,服務器將與該帖子對應的消息隊列返回給初次訪問該帖子的終端;當服務器收到終端返回的與該帖子相關(guān)的回復信息時,將所述回復信息持久化保持后放入與該帖子對應的消息隊列中;服務器根據(jù)所接收到的由終端發(fā)送的拉取消息的請求,從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端;所述終端顯示所獲取的消息。通過使用上述的方法,可以使得電子論壇的發(fā)布形式變得更加快捷、生動、活潑,降低即時通訊的技術(shù)難度與成本代價;同時還能保持沉淀知識與信息的能力,保證系統(tǒng)良好的可擴展性。
【專利說明】一種電子論壇的信息發(fā)布方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動互聯(lián)網(wǎng)技術(shù),特別涉及一種電子論壇的信息發(fā)布方法。
【背景技術(shù)】
[0002]在現(xiàn)有技術(shù)中,電子論壇(BBS)和即時通訊是兩種不同的多人信息交互方式。對于電子論壇而言,由于參與電子論壇的用戶數(shù)量比較龐大,因此如果希望讓電子論壇中的所有用戶都同時具有即時通訊能力,則通過使用現(xiàn)有技術(shù)中的技術(shù)方案實現(xiàn)上述目的的難度比較大,而且即使能夠?qū)崿F(xiàn),其成本代價也會比較高昂。
[0003]由于可知,現(xiàn)有技術(shù)中已經(jīng)存在的相關(guān)技術(shù)方案不能充分結(jié)合電子論壇沉淀信息與即時通訊快捷性的優(yōu)點,使得在線信息共享方式不夠自然,在電子論壇上實現(xiàn)即時通訊的難度很大,成本代價很高。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明提供一種電子論壇的信息發(fā)布方法,從而可以有效地。
[0005]本發(fā)明的技術(shù)方案具體是這樣實現(xiàn)的:
[0006]—種電子論壇的信息發(fā)布方法,該方法包括:
[0007]A、服務器根據(jù)終端的請求創(chuàng)建一個帖子并維持一個與該帖子對應的固定長度的消息隊列;
[0008]B、當其它終端初次訪問該帖子時,服務器將與該帖子對應的消息隊列返回給初次訪問該帖子的終端;
[0009]C、當服務器收到終端返回的與該帖子相關(guān)的回復信息時,將所述回復信息持久化保持后放入與該帖子對應的消息隊列中;
[0010]D、服務器根據(jù)所接收到的由終端發(fā)送的拉取消息的請求,從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端;所述終端顯示所獲取的消息。
[0011]較佳的,在所述步驟A之前,該方法還進一步包括:
[0012]所述終端向服務器發(fā)送創(chuàng)建帖子的請求。
[0013]較佳的,該方法還進一步包括:
[0014]當消息隊列已滿時,服務器將該消息隊列中時間最早的消息從該消息隊列中刪除。
[0015]較佳的,在所述步驟D之前,該方法還進一步包括:
[0016]所有正在訪問該貼子的終端都以預設頻率向服務器發(fā)送拉取消息的請求;
[0017]其中,所述拉取消息的請求中攜帶有第一時間戳;所述第一時間戳為該終端上次拉取的該帖子中的最后一條消息的生成時間。
[0018]較佳的,所述從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端包括:
[0019]根據(jù)所述拉取消息的請求中攜帶的第一時間戳,從該拉取消息的請求所對應的消息隊列中的最新消息開始遍歷,將消息隊列中所有生成時間大于所述時間戳的消息都返回給所述終端。
[0020]較佳的,所述預設頻率為每秒I次。
[0021]較佳的,在所述步驟D之前,該方法還進一步包括::
[0022]正在訪問該貼子的終端向服務器發(fā)送拉取歷史數(shù)據(jù)的請求;
[0023]其中,所述拉取消息的請求中攜帶有第二時間戳;所述第二時間戳為該終端當前所獲取的該帖子的所有消息的最小生成時間。
[0024]較佳的,所述從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端包括:
[0025]根據(jù)所述拉取消息的請求中攜帶的第二時間戳,從該拉取消息的請求所對應的帖子的持久化數(shù)據(jù)中選擇生成時間小于所述第二時間戳的歷史數(shù)據(jù),并將選擇出的歷史數(shù)據(jù)返回給所述終端。
[0026]如上可見,由于在本發(fā)明中的電子論壇的信息發(fā)布方法中,服務器可以根據(jù)終端發(fā)送的拉取消息的請求,從對應的消息隊列中獲取該請求所指定的消息(例如,該帖子的最新消息),并將所獲取的消息返回給所述終端,使得所述終端可以顯示所獲取的最新消息,因此,所有正在訪問該貼子的終端都可以以固定間隔向服務器輪詢消息隊列中的最新消息,使得所有正在訪問該貼子的終端都能夠即時獲取該帖子中的最新消息,從而使得電子論壇中的用戶都具備了即時通訊的能力,充分利用了電子論壇和即時通訊的優(yōu)點,在電子論壇上添加了即時通訊的能力,使得電子論壇這種信息發(fā)布形式變得更加快捷、生動、活潑,同時還能保持沉淀知識與信息的能力,將電子論壇與聊天室結(jié)合起來,形成了一種新的移動互聯(lián)網(wǎng)溝通形式。同時,還降低了即時通訊的技術(shù)難度與成本代價,使得服務器和終端之間的信息溝通所占據(jù)的帶寬與CPU資源相對于用戶數(shù)量呈線性增長的趨勢,避免了二次方甚至指數(shù)級別的增長趨勢,從而保證了系統(tǒng)具有良好的可擴展性。
【專利附圖】
【附圖說明】
[0027]圖1為本發(fā)明實施例中的電子論壇的信息發(fā)布方法的流程示意圖。
【具體實施方式】
[0028]為使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下參照附圖并舉實施例,對本發(fā)明進一步詳細說明。
[0029]本實施例提供了一種電子論壇的信息發(fā)布方法。
[0030]圖1為本發(fā)明實施例中的電子論壇的信息發(fā)布方法的流程示意圖。如圖1所示,本發(fā)明實施例中的電子論壇的信息發(fā)布方法主要包括如下所述的步驟:
[0031]步驟11,服務器根據(jù)終端的請求創(chuàng)建一個帖子并維持一個與該帖子對應的固定長度的消息隊列。
[0032]在本發(fā)明的技術(shù)方案中,所述服務器(Server)可以稱為信息交換推送服務器。所述終端(Client)可以是移動客戶端。所述服務器和終端可通過移動互聯(lián)網(wǎng)連通并相互傳輸數(shù)據(jù),而同一個服務器則可以同時與多個終端連接。
[0033]另外,具體來說,在本發(fā)明的較佳實施例中,在上述步驟11之前,還可以進一步包括如下所述的步驟:
[0034]所述終端向服務器發(fā)送創(chuàng)建帖子的請求。
[0035]另外,在本發(fā)明的技術(shù)方案中,所述消息可以是一個記錄。所述消息隊列可以是一種特殊的線性表,該線性表只允許在線性表的前端(front)進行刪除操作,而在該線性表的后端(rear)進行插入操作,因此是一種操作受限制的線性表。進行插入操作的隊列一端稱為隊尾,而進行刪除操作的隊列的一端稱為隊頭。當隊列中沒有元素時,稱為空隊列。在本發(fā)明的技術(shù)方案中,一個帖子唯一對應一個具有固定長度的消息隊列。
[0036]因此,在本步驟中,當服務器接收到終端發(fā)送的創(chuàng)建帖子的請求時,服務器可以根據(jù)該終端的請求創(chuàng)建一個帖子,并維持一個與該帖子對應的固定長度的消息隊列。
[0037]步驟12,當其它終端初次訪問該帖子時,服務器將與該帖子對應的消息隊列返回給初次訪問該帖子的終端。
[0038]步驟13,當服務器收到終端返回的與該帖子相關(guān)的回復信息時,將所述回復信息持久化保持后放入與該帖子對應的消息隊列中。
[0039]其它終端獲得與該帖子對應的消息隊列之后,可以向服務器發(fā)送相應的回復信息。而當服務器收到終端返回的與該帖子相關(guān)的回復信息時,就將該回復信息持久化保持后放入與該帖子對應的消息隊列中。其中,所述持久化保持是指將數(shù)據(jù)存入可訪問的可斷電保存數(shù)據(jù)的存貯設備上,例如,硬盤等;其保持方式可以包括:寫入文件或者數(shù)據(jù)庫等方式。
[0040]較佳的,在本發(fā)明的具體實施例中,當消息隊列已滿時,服務器則可將該消息隊列中時間最早的消息從該消息隊列中刪除。
[0041]步驟14,服務器根據(jù)所接收到的由終端發(fā)送的拉取消息的請求,從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端;所述終端顯示所獲取的消息。
[0042]在本發(fā)明的技術(shù)方案中,所有正在訪問該貼子的終端都可以向服務器發(fā)送拉取消息的請求,以獲得該帖子中的最新消息。
[0043]例如,較佳的,在本發(fā)明的具體實施例中,在上述步驟14之前,還可以進一步包括:
[0044]所有正在訪問該貼子的終端都以預設頻率向服務器發(fā)送拉取消息的請求;其中,所述拉取消息的請求中攜帶有第一時間戳,所述第一時間戳為該終端上次拉取的該帖子中的最后一條消息的生成時間。
[0045]由于所述拉取消息的請求中攜帶有上述第一時間戳,因此所述步驟14中的“從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端”則具體可以包括:
[0046]根據(jù)所述拉取消息的請求中攜帶的第一時間戳,從該拉取消息的請求所對應的消息隊列中的最新消息開始遍歷,將消息隊列中所有生成時間大于所述時間戳的消息都返回給所述終端。
[0047]較佳的,在本發(fā)明的具體實施例中,所述預設頻率可以是每秒I次。
[0048]通過上述的方式,終端可以以固定間隔(例如,每秒I次)向服務器輪詢消息隊列中的最新消息,從而使得所有正在訪問該貼子的終端都能夠即時獲取該帖子中的最新消息,相當于使得電子論壇中的用戶都具備了即時通訊的能力。
[0049]另外,在本發(fā)明的技術(shù)方案中,所有正在訪問該貼子的終端還可以隨時獲取該帖子的歷史數(shù)據(jù)。
[0050]例如,較佳的,在本發(fā)明的具體實施例中,在上述步驟14之前,還可以進一步包括:
[0051]正在訪問該貼子的終端可以向服務器發(fā)送拉取歷史數(shù)據(jù)的請求;其中,所述拉取消息的請求中攜帶有第二時間戳,所述第二時間戳為該終端當前所獲取的該帖子的所有消息的最小生成時間。
[0052]由于所述拉取消息的請求中攜帶有上述第二時間戳,因此所述步驟14中的“從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端”則具體可以包括:
[0053]根據(jù)所述拉取消息的請求中攜帶的第二時間戳,從該拉取消息的請求所對應的帖子的持久化數(shù)據(jù)(即存儲在預設存貯設備中的數(shù)據(jù))中選擇生成時間小于所述第二時間戳的歷史數(shù)據(jù),并將選擇出的歷史數(shù)據(jù)返回給所述終端。
[0054]綜上可知,由于在本發(fā)明中的電子論壇的信息發(fā)布方法中,服務器可以根據(jù)終端發(fā)送的拉取消息的請求,從對應的消息隊列中獲取該請求所指定的消息(例如,該帖子的最新消息),并將所獲取的消息返回給所述終端,使得所述終端可以顯示所獲取的最新消息,因此,所有正在訪問該貼子的終端都可以以固定間隔向服務器輪詢消息隊列中的最新消息,使得所有正在訪問該貼子的終端都能夠即時獲取該帖子中的最新消息,從而使得電子論壇中的用戶都具備了即時通訊的能力,充分利用了電子論壇和即時通訊的優(yōu)點,在電子論壇上添加了即時通訊的能力,使得電子論壇這種信息發(fā)布形式變得更加快捷、生動、活潑,同時還能保持沉淀知識與信息的能力,將電子論壇與聊天室結(jié)合起來,形成了一種新的移動互聯(lián)網(wǎng)溝通形式。同時,還降低了即時通訊的技術(shù)難度與成本代價,使得服務器和終端之間的信息溝通所占據(jù)的帶寬與CPU資源相對于用戶數(shù)量呈線性增長的趨勢,避免了二次方甚至指數(shù)級別的增長趨勢,從而保證了系統(tǒng)具有良好的可擴展性。
[0055]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應包含在本發(fā)明保護的范圍之內(nèi)。
【權(quán)利要求】
1.一種電子論壇的信息發(fā)布方法,其特征在于,該方法包括: A、服務器根據(jù)終端的請求創(chuàng)建一個帖子并維持一個與該帖子對應的固定長度的消息隊列; B、當其它終端初次訪問該帖子時,服務器將與該帖子對應的消息隊列返回給初次訪問該帖子的終端; C、當服務器收到終端返回的與該帖子相關(guān)的回復信息時,將所述回復信息持久化保持后放入與該帖子對應的消息隊列中; D、服務器根據(jù)所接收到的由終端發(fā)送的拉取消息的請求,從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端;所述終端顯示所獲取的消息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟A之前,該方法還進一步包括: 所述終端向服務器發(fā)送創(chuàng)建帖子的請求。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法還進一步包括: 當消息隊列已滿時,服務器將該消息隊列中時間最早的消息從該消息隊列中刪除。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟D之前,該方法還進一步包括: 所有正在訪問該貼子的終端都以預設頻率向服務器發(fā)送拉取消息的請求; 其中,所述拉取消息的請求中攜帶有第一時間戳;所述第一時間戳為該終端上次拉取的該帖子中的最后一條消息的生成時間。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端包括: 根據(jù)所述拉取消息的請求中攜帶的第一時間戳,從該拉取消息的請求所對應的消息隊列中的最新消息開始遍歷,將消息隊列中所有生成時間大于所述時間戳的消息都返回給所述終。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于: 所述預設頻率為每秒I次。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述步驟D之前,該方法還進一步包括:: 正在訪問該貼子的終端向服務器發(fā)送拉取歷史數(shù)據(jù)的請求; 其中,所述拉取消息的請求中攜帶有第二時間戳;所述第二時間戳為該終端當前所獲取的該帖子的所有消息的最小生成時間。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述從對應的消息隊列中獲取該請求指定的消息,并將所獲取的消息返回給所述終端包括: 根據(jù)所述拉取消息的請求中攜帶的第二時間戳,從該拉取消息的請求所對應的帖子的持久化數(shù)據(jù)中選擇生成時間小于所述第二時間戳的歷史數(shù)據(jù),并將選擇出的歷史數(shù)據(jù)返回給所述終端。
【文檔編號】H04L12/58GK104320330SQ201410611967
【公開日】2015年1月28日 申請日期:2014年11月3日 優(yōu)先權(quán)日:2014年11月3日
【發(fā)明者】徐發(fā)銳 申請人:北京微車一族信息技術(shù)發(fā)展有限公司