定時發布數據的處理方法及裝置制造方法
【專利摘要】本發明公開了一種定時發布數據的處理方法和裝置。所述方法包括:接收對定時發布數據的操作請求;根據所述操作請求,寫增加文件或刪除文件,所述增加文件對應于所要新增或更新后的定時發布數據,所述刪除文件對應于所要刪除或更新前的定時發布數據,所述增加文件和所述刪除文件以定時發布數據的發布時間為索引。應用本發明技術方案,減少新增、刪除或更新定時發布數據的處理耗時,提高處理效率。
【專利說明】定時發布數據的處理方法及裝置
【技術領域】
[0001]本發明涉及計算機【技術領域】,特別是涉及一種定時發布數據的處理方法及裝置。
【背景技術】
[0002]隨著計算機技術及網絡技術的發展,使用服務器定時發布信息的技術得到越來越多的應用,例如在農場游戲中,在預定的發布時間向用戶發送游戲提醒,又例如定時向好友發送生日提醒,又例如定時向全網用戶發送資訊信息。定時發布信息技術在生活中越來越不可或缺。
[0003]定時發布信息技術需要對定時發布數據進行存取。在傳統技術中,可以通過關系型數據庫或key-value型存儲系統存儲定時發布數據。發明人在研究中發現,傳統技術至少存在如下技術問題:用戶的并發請求量很大,服務器需要根據用戶的請求,查詢數據庫,在數據庫中新增、刪除或更新定時發布數據。此外,在數據庫更新完成后,后續服務器還需要在預設的發布時間讀取所有對應的定時發布數據,再進行發布,由此處理量比較大,耗時多,降低了處理效率,甚至有可能延時發布或者丟失某些定時發布數據。
【發明內容】
[0004]基于此,有必要提供一種定時發布數據的處理方法和裝置,應用本方法和裝置減少處理耗時,提高處理效率。
[0005]一種定時發布數據的處理方法,所述方法包括:
[0006]接收對定時發布數據的操作請求;
[0007]根據所述操作請求,寫增加文件或刪除文件,所述增加文件對應于所要新增或更新后的定時發布數據,所述刪除文件對應于所要刪除或更新前的定時發布數據,所述增加文件和所述刪除文件以定時發布數據的發布時間為索引。
[0008]一種定時發布數據的處理裝置,所述裝置包括:
[0009]接收模塊,用于接收對定時發布數據的操作請求;
[0010]處理模塊,用于根據所述操作請求,寫增加文件或刪除文件,所述增加文件對應于所要新增或更新后的定時發布數據,所述刪除文件對應于所要刪除或更新前的定時發布數據,所述增加文件和所述刪除文件以定時發布數據的發布時間為索引。
[0011]上述定時發布數據的處理方法和裝置,在接收到用戶大量的操作請求后,以用戶所要新增、刪除或更新的定時發布數據的發布時間為索引,直接進行增加文件或刪除文件的寫操作,相比于傳統技術,不需要經過繁瑣的數據庫查詢再修改的操作,減少新增、刪除或更新定時發布數據的處理耗時,提高處理效率。
【專利附圖】
【附圖說明】
[0012]圖1為一個實施例中的定時發布數據的處理方法的流程示意圖;
[0013]圖2為一個實施例中的定時發布數據的處理方法的流程示意圖;
[0014]圖3為一個實施例中寫增加文件或刪除文件的流程示意圖;
[0015]圖4為一個實施例中的定時發布數據的發布方法的應用場景圖;
[0016]圖5為一個實施例中定時發布數據的發布流程示意圖;
[0017]圖6為一個實施例中的定時發布數據的處理裝置的結構示意圖;
[0018]圖7為一個實施例中處理模塊的結構示意圖;
[0019]圖8為一個實施例中的定時發布數據的處理終端的結構示意圖。
【具體實施方式】
[0020]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0021]參見圖1,在一個實施例中,提供了一種定時發布數據的處理方法。此方法可以用于變更定時發布信息的應用場景,例如用戶通過客戶端發送新增定時發布數據、刪除已有的定時發布數據以及更新已有的定時發布數據,定時發布數據可以用于為網絡用戶提供游戲提醒、好友生日提醒、資訊信息發布等。
[0022]在本實施例中,該方法包括流程:
[0023]步驟102,接收對定時發布數據的操作請求。
[0024]在本實施例中,可以接收大量用戶從客戶端發來的操作請求。所接收的操作請求包括增加數據請求、刪除數據請求和更新數據請求。在本實施例中,定時發布數據可以以分鐘為單位,在其它實施例中以小時、星期等為單位在此不再贅述。增加數據請求用于增加一條用戶所要定時發布的定時發布數據,例如可以新增一條在2013年5月31日18時20分發布的定時發布數據,其發布內容為“明天兒童節”。刪除數據請求用于刪除一條已有的定時發布數據,例如刪除一條發布時間為2013年8月22日23時12分的農場游戲提醒。更新數據請求用于更新一條已有的定時發布數據,例如更新發布時間或更新發布內容。
[0025]步驟104,根據操作請求,寫增加文件或刪除文件。
[0026]根據接收到的操作請求,進行寫增加文件或刪除文件的操作。增加文件和刪除文件以定時發布數據的發布時間為索引。增加文件對應于所要新增或更新后的定時發布數據,刪除文件對應于所要刪除或更新前的定時發布數據。增加文件和刪除文件可以通過不同的后綴來區別,例如增加文件可以是以.data為后綴的文件,刪除文件可以是以.del為后綴的文件。接收的操作請求的類型不同,所要寫的文件也不相同。當接收的操作請求為增加數據請求,這時只需要寫增加文件,例如新增一條2013年6月21日18時12分所要發布的提醒,可以建立索引目錄為“20130621/1812.data”的增加文件,將新增的定時發布數據記錄到此增加文件中。當接收的操作請求為刪除數據請求,這時只需要寫刪除文件,例如用戶請求刪除一條已有的發布時間為2013年6月22日23時12分的提醒,可以建立索引目錄為“20130622/2312.del”的刪除文件,將所要刪除的定時發布數據或該定時發布數據對應的唯一標識記錄到刪除文件中。當接收的操作請求為更新數據請求,這時需要寫增加文件和刪除文件,在刪除文件中記錄更新前的定時發布數據的信息如唯一標識等,以及在增加文件中寫入更新后的定時發布數據,例如當用戶請求更新發布時間為2013年6月23日22時10分的定時發布數據,且只將發布內容由“明天兒童節”更新為“明天教師節”,則其對應的寫文件操作為:在索引目錄為“20130623/2210.del”的刪除文件中記錄更新前的定時發布數據的唯一標識,在索引目錄為“20130623/2210.data”的增加文件中記錄更新后的定時發布數據,包括更新后的唯一標識、發布內容等。在本實施例中,增加文件和刪除文件的索引目錄只包括定時發布數據的發布時間。在其它的實施例中,增加文件和刪除文件的索引key不僅包括定時發布數據的發布時間,也包括了用戶號碼的相關信息。例如用戶號碼為10002的用戶客戶端發送了增加數據請求,請求新增一條發布時間為2013年6月22日18時21分的定時發布數據,則對應寫索引目錄為10002/20130622/1821.data的增加文件。當用戶號碼數目比較大的時候,為減少寫文件的數目,提高性能,可以在索引目錄中以用戶號碼與一較大自然數的求余結果作為頂層目錄,該較大自然數可以但不限于是1000,例如用戶號碼為1000532的用戶客戶端發送一刪除數據請求,請求刪除發布時間為2013年6月23日22時15分的定時發布數據,相應地,則需要寫索引目錄為532/20130623/2215.del的刪除文件。
[0027]上述定時發布數據的處理方法和裝置,在接收到用戶大量的操作請求后,以用戶所要新增、刪除或更新的定時發布數據的發布時間為索引,直接進行增加文件或刪除文件的寫操作,相比于傳統技術,不需要經過繁瑣的數據庫查詢再修改的操作,減少新增、刪除或更新定時發布數據的處理耗時,提高處理效率。
[0028]參見圖2,在一個實施例中,提供了一種定時發布數據的處理方法。此方法可以應用于獲取用戶的操作請求,并定時發布信息的應用場景,例如通過服務器為網絡用戶提供游戲提醒、好友生日提醒、資訊信息發布等。
[0029]在本實施例中,該方法包括流程:
[0030]步驟202,接收對定時發布數據的操作請求。
[0031]在本實施例中,可以接收大量用戶從客戶端發來的操作請求。所接收的操作請求包括增加數據請求、刪除數據請求和更新數據請求。在本實施例中,定時發布數據可以以分鐘為單位。增加數據請求用于增加一條用戶所要定時發布的定時發布數據。刪除數據請求用于刪除一條已有的定時發布數據。更新數據請求用于更新一條已有的定時發布數據,例如更新發布時間或更新發布內容。
[0032]步驟204,根據操作請求,寫增加文件或刪除文件。
[0033]根據接收到的操作請求,進行寫增加文件或刪除文件的操作。增加文件和刪除文件以定時發布數據的發布時間為索引。增加文件對應于所要新增或更新后的定時發布數據,刪除文件對應于所要刪除或更新前的定時發布數據。增加文件和刪除文件可以通過不同的后綴來區別,例如增加文件可以是以.data為后綴的文件,刪除文件可以是以.del為后綴的文件。接收的操作請求的類型不同,所要寫的文件也不相同。當接收的操作請求為增加數據請求,這時只需要寫增加文件,例如新增一條2013年6月21日18時12分所要發布的提醒,可以建立索引目錄為“20130621/1812.data”的增加文件,將新增的定時發布數據記錄到此增加文件中。當接收的操作請求為刪除數據請求,這時只需要寫刪除文件,例如用戶請求刪除一條已有的發布時間為2013年6月22日23時12分的提醒,可以建立索引目錄為“20130622/2312.del”的刪除文件,將所要刪除的定時發布數據或該定時發布數據對應的唯一標識記錄到刪除文件中。當接收的操作請求為更新數據請求,這時需要寫增加文件和刪除文件,在刪除文件中記錄更新前定時發布數據的信息如唯一標識等,以及在增加文件中寫入更新后的定時發布數據,例如當用戶請求更新發布時間為2013年6月23日22時10分的定時發布數據,如將發布內容由“明天兒童節”更新為“明天教師節”,以及將發布時間改為2013年6月24日15時20分,則其對應的寫文件操作為:在索引目錄為“20130623/2210.del”的刪除文件中記錄更新前的定時發布數據的唯一標識,并在索引目錄為“20130624/1520.data”的增加文件中記錄更新后的定時發布數據,包括更新后的唯一標識、發布內容等。在本實施例中,增加文件和刪除文件的索引目錄只包括定時發布數據的發布時間。在其它的實施例中,增加文件和刪除文件的索引key不僅包括定時發布數據的發布時間,也包括了用戶號碼的相關信息。例如用戶號碼為10002的用戶客戶端發送了增加數據請求,請求新增一條發布時間為2013年6月22日18時21分的定時發布數據,則對應寫索引目錄為10002/20130622/1821.data的增加文件。當用戶號碼數目比較大的時候,為減少寫文件的數目,提高性能,可以在索引目錄中以用戶號碼與一較大自然數的求余結果作為頂層目錄,該較大自然數可以但不限于是1000,例如用戶號碼為1000532的用戶客戶端發送一刪除數據請求,請求刪除發布時間為2013年6月23日22時15分的定時發布數據,相應地,則需要寫索引目錄為532/20130623/2215.del的刪除文件。
[0034]步驟206,根據各發布時間對應的增加文件和刪除文件,確定各發布時間所要發布的定時發布數據,并發布定時發布數據。
[0035]在本實施例中,定時發布數據以分鐘為單位,在每分鐘內根據當前分鐘對應的增加文件和刪除文件,確定當前一分鐘內所要發布的定時發布數據,例如可以通過讀取增加文件中的定時發布數據或僅讀取該定時發布數據的唯一標識,并判斷該定時發布數據的唯一標識是否在刪除文件中,如果在刪除文件中,則可以判定該定時發布數據已經被用戶請求刪除,因而不需要發布;如果不在刪除文件中,則判定該定時發布數據是當前時間所要發布的數據,需要進行發布。本實施例中,發布定時發布數據,可以將該定時發布數據發布給全網用戶、發布給特定用戶或者發布給特定用戶的好友等等,其發布過程可以參見傳統技術,在此不再贅述。
[0036]上述定時發布數據的發布方法,在接收到用戶大量的操作請求后,以用戶所要新增、刪除或更新的定時發布數據的發布時間為索引,直接進行增加文件或刪除文件的寫操作,相比于傳統技術,不需要經過繁瑣的數據庫查詢再修改的操作;當在預設的發布時間發布數據時,上述定時發布數據的發布方法,只需要比較增加文件和刪除文件,確定各發布時間對應的定時發布數據,并進行發布。由此,上述方法和裝置減少了處理耗時,提高處理效率,有效避免延時發布或丟失定時發布數據。
[0037]參見圖3,在一個實施例中,提供了寫增加文件或刪除文件的具體處理流程。其流程包括:
[0038]步驟302,判斷操作請求為增加數據請求、刪除數據請求和更新數據請求中的哪一種。
[0039]在本實施例中,可以通過預設的通信協議來識別操作請求的類型,例如在通信數據中通過某幾位標識位來標識操作請求的類型。關于增加數據請求、刪除數據請求和更新數據請求的描述可參見前一實施例中步驟102的描述,此外根據不同操作請求,其包含的內容可以有所區別。增加數據請求可以包含所要新增的定時發布數據的唯一標識、發布時間和發布內容等;刪除數據請求可以包含所要刪除的定時發布數據的唯一標識和發布時間;更新數據請求可以包含更新前的定時發布數據的唯一標識、發布時間以及更新后的定時發布數據的唯一標識、發布時間、發布內容等。
[0040]步驟304,判定操作請求為增加數據請求。
[0041]當判定操作請求為增加數據請求時,執行步驟306。
[0042]步驟306,以append文件的方式,寫增加文件。
[0043]以append文件(直接在文件中內容的結尾處寫新的內容)的方式,將用戶所要新增的定時發布數據的唯一標識和發布內容記錄到所要新增的定時發布數據的發布時間對應的增加文件中。
[0044]步驟308,判定操作請求為刪除數據請求。
[0045]當判定操作請求為刪除數據請求時,執行步驟310。
[0046]步驟310,以append文件的方式,寫刪除文件。
[0047]以append文件的方式,將用戶所要刪除的定時發布數據的唯一標識記錄到所要刪除的定時發布數據的發布時間對應的刪除文件中。
[0048]步驟312,判定操作請求為更新數據請求。
[0049]當判定操作請求為更新數據請求時,執行步驟314。
[0050]步驟314,以append文件的方式,寫增加文件、刪除文件。
[0051]以append文件的方式,將用戶所要更新的定時發布數據的唯一標識記錄到所要更新的定時發布數據的發布時間對應的刪除文件中,并將更新后的唯一標識、發布內容記錄到更新后發布時間對應的增加文件中。
[0052]本實施例中,以append文件的方式進行寫增加文件或刪除文件的操作,進一步減少了處理耗時,并且在寫刪除文件時,只寫入所要刪除的定時發布數據的唯一標識,進一步提高了處理效率,減少了刪除文件所需的存儲空間。
[0053]參見圖4,在一個實施例中,提供了一種定時發布數據的處理方法的具體應用場旦
-5^ O
[0054]在本實施例中,接收進程402接收大量用戶所在客戶端發送的操作請求,操作請求包括增加數據請求、刪除數據請求和更新數據請求。
[0055]接收進程402根據用戶標識,確定用戶標識對應的共享緩存隊列,通過確定的共享緩存隊列來接收操作請求。用戶標識可以但不限于是用戶唯一對應的用戶號碼,可以通過用戶號碼與共享緩存隊列的總數目的求余結果來確定對應的接收緩存隊列,如用戶號碼為10002,10002與共享緩存隊列數目的求余結果為0,將求余結果進行加I處理,得到對應的共享緩存隊列1,接收進程402將操作請求壓入共享緩存隊列1,共享緩存隊列I中的數據可以但不限于按照先進先出的方式進行處理。
[0056]共享緩存隊列I對應的4041進程1,提取共享緩存隊列I中的操作請求,根據用戶標識,確定用戶標識對應的線程隊列,通過確定的線程隊列接收操作請求,再通過該線程隊列對應的線程進行寫增加文件或刪除文件的操作。在本實施例中,3041進程I可以根據用戶號碼與線程隊列的數目的求余結果確定對應的線程隊列。線程隊列對應的線程進行寫增加文件或刪除文件的操作時,可以但不限于參照圖3中實施例的描述,當操作請求為增加數據請求,寫增加文件;當操作請求為刪除數據請求,寫刪除文件;當操作請求為更新數據請求時,同時寫增加文件和刪除文件。參見圖4,增加文件和刪除文件存儲在存儲模塊406中,存儲模塊406可以是硬盤、磁盤等。增加文件的后綴為.data,刪除文件的后綴為.del。在本實施例中,增加文件和刪除文件的索引key不僅包括定時發布數據的發布時間,也包括了用戶號碼的相關信息。例如用戶號碼為10002的用戶客戶端發送了增加數據請求,請求新增一條發布時間為2013年6月22日18時21分的定時發布數據,可以通過線程寫索引目錄為10002/20130622/1821.data的增加文件。當用戶號碼數目比較大的時候,為減少寫文件的數目,提高性能,可以在索引目錄中以用戶號碼與一較大自然數的求余結果作為頂層目錄,該較大自然數可以但不限于是1000,例如用戶號碼為1000532的用戶客戶端發送一刪除數據請求,請求刪除發布時間為2013年6月23日22時15分的定時發布數據,相應地,可以通過線程寫索引目錄為532/20130623/2215.del的刪除文件。
[0057]本實施例中,通過不同共享緩存隊列接收用戶的操作請求,降低了大量操作請求處理時的沖突,并且在寫增加文件或刪除文件時,不同的線程有不同的分工,由于本實施例中,增加文件和刪除文件的目錄包含了用戶號碼的相關信息,由此不同的線程所寫的增加文件或刪除文件不會相同,避免了寫文件時數據沖突的風險。
[0058]參見圖5,在一個實施例中提供了發布定時的發布處理流程。本實施例中的定時發布數據的處理方法包含了圖2和圖3中實施例的全部流程。
[0059]具體的,本實施例中的定時發布數據的處理方法,所包含的發布流程包括:
[0060]步驟502,讀取各發布時間對應的刪除文件。
[0061]在本實施例中,發布時間以分鐘為單位。在每一分鐘,將對應的刪除文件讀取到內存中,例如在2013年6月22 H 23時12分,將索引目錄為“20130622/2312.del”的刪除文件讀取到內存。參見圖3中實施例,由于刪除文件中只包含了刪除的定時發布數據的唯一標識,因此刪除文件比較小,讀取速度可以比較快。在其它的實施例中,所讀取的刪除文件的索引目錄包含了用戶號碼的相關信息,相關信息可以是用戶號碼與較大自然數1000的求余結果,例如在2013年6月23 H 12時19分,讀取索引目錄“0/20130623/1219.del”、“1/20130623/1219.del”......“532/20130623/1219.del” 等的刪除文件。
[0062]步驟504,讀取各發布時間對應的增加文件中的定時發布數據的唯一標識。
[0063]參見圖3中實施例,增加文件是以append文件的方式進行寫操作的,因此本實施例,可以按照預設的順序讀取增加文件中的定時發布數據,例如在2013年6月22日23時12分,將目錄為“20130622/2312.data”的增加文件中的定時發布數據的唯一標識順序讀取到內存。在其它實施例中,所讀取的增加文件的索引目錄中,還可以包含用戶號碼或用戶號碼的相關信息,其索引目錄結構,在此不再詳細贅述,可以參見步驟502在其它實施例中所讀取的刪除文件的索引目錄的說明。
[0064]步驟506,判斷定時發布數據的唯一標識是否記錄在刪除文件中。
[0065]比較讀取的定時發布數據的唯一標識是否存在于內存中的刪除文件中,若否,執行步驟508,若是,執行步驟512。
[0066]步驟508,判定定時發布數據為所要發布的定時發布數據。
[0067]步驟510,發布定時發布數據。
[0068]在步驟508之后執行步驟510,發布定時發布數據,可以將該定時發布數據發布給全網用戶、發布給特定用戶或者發布給特定用戶的好友等等。
[0069]步驟512,判定定時發布數據不是所要發布的定時發布數據。
[0070]當判定定時發布數據不是所要發布的定時發布數據,不進行發布處理,繼續讀取下一定時發布數據。
[0071]此外,在本實施例中,發布時間以分鐘為單位,在每一分鐘,根據對應的刪除文件和增加文件進行定時發布數據的發布。在該時間點之后,可以預設一個時間間隔,例如每小時、每天等對過期的增加文件和刪除文件進行刪除操作,從而釋放硬盤或磁盤的存儲空間。
[0072]本實施例中,在發布定時發布數據時,只需要讀取文件體積比較小的刪除文件,以及順序讀取增加文件中的定時發布數據,不需要將大量的定時發布數據加載到內存,減少了內存加載耗時,提高了處理效率。
[0073]參見圖6,在一個實施例中,提供了一種定時發布數據的處理裝置。該裝置可以但不限于應用于一服務器中,該服務器可以為網絡用戶提供游戲提醒、好友生日提醒、資訊信息發布等。
[0074]本實施提供的定時發布數據的發布裝置包括:
[0075]接收模塊602,用于接收對定時發布數據的操作請求,操作請求包括增加數據請求、刪除數據請求或更新數據請求。
[0076]處理模塊604,用于根據操作請求,寫增加文件或刪除文件,增加文件對應于所要新增或更新后的定時發布數據,刪除文件對應于所要刪除或更新前的定時發布數據,增加文件和刪除文件以定時發布數據的發布時間為索引。
[0077]在本實施例中,該裝置還可以包括發布模塊606,由此就實現了將定時發布數據進行發布的功能。發布模塊606用于根據各發布時間對應的增加文件和刪除文件,確定各發布時間所要發布的定時發布數據,并發布定時發布數據。
[0078]參見圖7,在一個實施例中,處理模塊604包括判斷單元6042和文件修改單元6044。
[0079]判斷單元6042,用于判斷操作請求為增加數據請求、刪除數據請求、更新數據請求中的哪一種。
[0080]文件修改單元6044,用于:在操作請求為增加數據請求時,以append文件的方式,將用戶所要新增的定時發布數據的唯一標識和發布內容記錄到所要新增的定時發布數據的發布時間對應的增加文件中;以及在所述操作請求為刪除數據請求時,以append文件的方式,將用戶所要刪除的定時發布數據的唯一標識記錄到所要刪除的定時發布數據的發布時間對應的刪除文件中;以及在所述操作請求為更新數據請求時,以append文件的方式,將用戶所要更新的定時發布數據的唯一標識記錄到所要更新的定時發布數據的發布時間對應的刪除文件中,并將更新后的唯一標識、發布內容記錄到更新后發布時間對應的增加文件中。
[0081]此外,在一個實施例中,接收模塊602可以根據用戶標識,確定用戶標識對應的共享緩存隊列,通過共享緩存隊列接收操作請求。用戶標識例如可以是用戶唯一對應的用戶號碼,接收模塊602根據用戶號碼與共享緩存隊列的數目的求余結果確定對應的共享緩存隊列。處理模塊604,用于根據用戶標識,確定用戶標識對應的線程隊列,通過線程隊列接收操作請求,再通過線程隊列對應的線程寫增加文件或刪除文件,相應地,處理模塊604可以根據用戶號碼與線程隊列的數目的求余結果確定對應的處理緩存隊列。
[0082]在一個實施例中,發布模塊606用于讀取各發布時間對應的刪除文件;以及讀取各發布時間對應的增加文件中的定時發布數據的唯一標識,并判斷定時發布數據的唯一標識是否記錄在刪除文件中;若否,則定時發布數據為所要發布的定時發布數據,若是,則定時發布數據不是所要發布的定時發布數據。
[0083]本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。
[0084]本發明實施例還提供了另一種定時發布數據的發布終端,如圖8所示,為了便于說明,僅示出了與本發明實施例相關的部分,具體技術細節未揭示的,請參照本發明實施例方法部分。該終端可以為包括手機、平板電腦、PDA (Personal Digital Assistant,個人數字助理)、P0S (Point of Sales,銷售終端)、車載電腦等任意終端設備,以終端為手機為例:
[0085]圖8示出的是與本發明實施例提供的終端相關的手機的部分結構的框圖。參考圖8,手機包括:射頻(Rad1 Frequency, RF)電路1110、存儲器1120、輸入單元1130、顯示單元1140、傳感器1150、音頻電路1160、無線保真(wireless fidelity, WiFi)模塊1170、處理器1180、以及電源1190等部件。本領域技術人員可以理解,圖8中示出的手機結構并不構成對手機的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。
[0086]下面結合圖8對手機的各個構成部件進行具體的介紹:
[0087]RF電路1110可用于收發信息或通話過程中,信號的接收和發送,特別地,將基站的下行信息接收后,給處理器1180處理;另外,將設計上行的數據發送給基站。通常,RF電路包括但不限于天線、至少一個放大器、收發信機、耦合器、低噪聲放大器(LowNoise Amplifier, LNA)、雙工器等。此外,RF電路110還可以通過無線通信與網絡和其他設備通信。上述無線通信可以使用任一通信標準或協議,包括但不限于全球移動通訊系統(Global System of Mobile communicat1n, GSM)、通用分組無線服務(GeneralPacket Rad1 Service, GPRS)、碼分多址(Code Divis1n Multiple Access, CDMA)、寬帶碼分多址(Wideband Code Divis1n Multiple Access, WCDMA)、長期演進(Long TermEvolut1n, LTE))、電子郵件、短消息服務(Short Messaging Service, SMS)等。
[0088]存儲器1120可用于存儲軟件程序以及模塊,處理器1180通過運行存儲在存儲器1120的軟件程序以及模塊,從而執行手機的各種功能應用以及數據處理。存儲器1120可主要包括存儲程序區和存儲數據區,其中,存儲程序區可存儲操作系統、至少一個功能所需的應用程序(比如聲音播放功能、圖像播放功能等)等;存儲數據區可存儲根據手機的使用所創建的數據(比如音頻數據、電話本等)等。此外,存儲器1120可以包括高速隨機存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他易失性固態存儲器件。
[0089]輸入單元1130可用于接收輸入的數字或字符信息,以及產生與手機1100的用戶設置以及功能控制有關的鍵信號輸入。具體地,輸入單元1130可包括觸控面板1131以及其他輸入設備1132。觸控面板1131,也稱為觸摸屏,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板1131上或在觸控面板1131附近的操作),并根據預先設定的程式驅動相應的連接裝置。可選的,觸控面板1131可包括觸摸檢測裝置和觸摸控制器兩個部分。其中,觸摸檢測裝置檢測用戶的觸摸方位,并檢測觸摸操作帶來的信號,將信號傳送給觸摸控制器;觸摸控制器從觸摸檢測裝置上接收觸摸信息,并將它轉換成觸點坐標,再送給處理器1180,并能接收處理器1180發來的命令并加以執行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實現觸控面板1131。除了觸控面板1131,輸入單元1130還可以包括其他輸入設備1132。具體地,其他輸入設備1132可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關按鍵等)、軌跡球、鼠標、操作桿等中的一種或多種。
[0090]顯示單元1140可用于顯示由用戶輸入的信息或提供給用戶的信息以及手機的各種菜單。顯示單元1140可包括顯示面板1141,可選的,可以采用液晶顯示器(LiquidCrystal Display, LCD)、有機發光二極管(Organic Light-Emitting D1de, 0LED)等形式來配置顯示面板1141。進一步的,觸控面板1131可覆蓋顯示面板1141,當觸控面板1131檢測到在其上或附近的觸摸操作后,傳送給處理器1180以確定觸摸事件的類型,隨后處理器1180根據觸摸事件的類型在顯示面板1141上提供相應的視覺輸出。雖然在圖8中,觸控面板1131與顯示面板1141是作為兩個獨立的部件來實現手機的輸入和輸入功能,但是在某些實施例中,可以將觸控面板1131與顯示面板1141集成而實現手機的輸入和輸出功倉泛。
[0091]手機1100還可包括至少一種傳感器1150,比如光傳感器、運動傳感器以及其他傳感器。具體地,光傳感器可包括環境光傳感器及接近傳感器,其中,環境光傳感器可根據環境光線的明暗來調節顯示面板1141的亮度,接近傳感器可在手機移動到耳邊時,關閉顯示面板1141和/或背光。作為運動傳感器的一種,加速計傳感器可檢測各個方向上(一般為三軸)加速度的大小,靜止時可檢測出重力的大小及方向,可用于識別手機姿態的應用匕如橫豎屏切換、相關游戲、磁力計姿態校準)、振動識別相關功能(比如計步器、敲擊)等;至于手機還可配置的陀螺儀、氣壓計、濕度計、溫度計、紅外線傳感器等其他傳感器,在此不再贅述。
[0092]音頻電路1160、揚聲器1161,傳聲器1162可提供用戶與手機之間的音頻接口。音頻電路1160可將接收到的音頻數據轉換后的電信號,傳輸到揚聲器1161,由揚聲器1161轉換為聲音信號輸出;另一方面,傳聲器1162將收集的聲音信號轉換為電信號,由音頻電路1160接收后轉換為音頻數據,再將音頻數據輸出處理器1180處理后,經RF電路1110以發送給比如另一手機,或者將音頻數據輸出至存儲器1120以便進一步處理。
[0093]WiFi屬于短距離無線傳輸技術,手機通過WiFi模塊1170可以幫助用戶收發電子郵件、瀏覽網頁和訪問流式媒體等,它為用戶提供了無線的寬帶互聯網訪問。雖然圖8示出了 WiFi模塊1170,但是可以理解的是,其并不屬于手機1100的必須構成,完全可以根據需要在不改變發明的本質的范圍內而省略。
[0094]處理器1180是手機的控制中心,利用各種接口和線路連接整個手機的各個部分,通過運行或執行存儲在存儲器1120內的軟件程序和/或模塊,以及調用存儲在存儲器1120內的數據,執行手機的各種功能和處理數據,從而對手機進行整體監控。可選的,處理器1180可包括一個或多個處理單元;優選的,處理器1180可集成應用處理器和調制解調處理器,其中,應用處理器主要處理操作系統、用戶界面和應用程序等,調制解調處理器主要處理無線通信。可以理解的是,上述調制解調處理器也可以不集成到處理器1180中。
[0095]手機1100還包括給各個部件供電的電源1190(比如電池),優選的,電源可以通過電源管理系統與處理器1180邏輯相連,從而通過電源管理系統實現管理充電、放電、以及功耗管理等功能。
[0096]盡管未示出,手機1100還可以包括攝像頭、藍牙模塊等,在此不再贅述。
[0097]在本發明實施例中,該終端所包括的處理器1180還具有以下功能:
[0098]接收用戶對定時發布數據的操作請求,操作請求包括增加數據請求、刪除數據請求或更新數據請求;根據操作請求,寫增加文件或刪除文件,增加文件對應于所要定時發布的定時發布數據,刪除文件對應于所要刪除的定時發布數據,增加文件和刪除文件以定時發布數據的發布時間為索引。
[0099]在本發明實施例中,該終端所包括的處理器1180還具有以下功能:
[0100]判斷操作請求為增加數據請求、刪除數據請求、更新數據請求中的哪一種;若操作請求為增加數據請求,以append文件的方式,將用戶所要新增的定時發布數據的唯一標識和發布內容記錄到所要新增的定時發布數據的發布時間對應的增加文件中;若操作請求為刪除數據請求,以append文件的方式,將用戶所要刪除的定時發布數據的唯一標識記錄到所要刪除的定時發布數據的發布時間對應的刪除文件中;若操作請求為更新數據請求,以append文件的方式,將用戶所要更新的定時發布數據的唯一標識記錄到所要更新的定時發布數據的發布時間對應的刪除文件中,并將更新后的唯一標識、發布內容記錄到更新后發布時間對應的增加文件中。
[0101]在本發明實施例中,該終端所包括的處理器1180還具有以下功能:
[0102]根據用戶標識,確定用戶標識對應的共享緩存隊列,通過共享緩存隊列接收操作請求;根據用戶標識,確定用戶標識對應的線程隊列,通過線程隊列接收操作請求,再通過線程隊列對應的線程寫增加文件或刪除文件。
[0103]在本發明實施例中,該終端所包括的處理器1180還具有以下功能:
[0104]根據用戶號碼與共享緩存隊列的數目的求余結果確定對應的共享緩存隊列;根據用戶號碼與線程隊列的數目的求余結果確定對應的線程隊列。
[0105]在本發明實施例中,該終端所包括的處理器1180還具有以下功能:
[0106]讀取各發布時間對應的刪除文件;讀取各發布時間對應的增加文件中的定時發布數據的唯一標識,并判斷定時發布數據的唯一標識是否記錄在刪除文件中;若否,則判定所述定時發布數據為所要發布的定時發布數據;若是,則判定所述定時發布數據不是所要發布的定時發布數據。
[0107]以上所述實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發明專利范圍的限制。應當指出的是,對于本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬于本發明的保護范圍。因此,本發明專利的保護范圍應以所附權利要求為準。
【權利要求】
1.一種定時發布數據的處理方法,所述方法包括: 接收對定時發布數據的操作請求; 根據所述操作請求,寫增加文件或刪除文件,所述增加文件對應于所要新增或更新后的定時發布數據,所述刪除文件對應于所要刪除或更新前的定時發布數據,所述增加文件和所述刪除文件以定時發布數據的發布時間為索引。
2.根據權利要求1所述的方法,其特征在于,所述定時發布數據包括唯一標識、發布時間和發布內容; 所述操作請求包括增加數據請求、刪除數據請求和更新數據請求; 所述增加數據請求包括所要新增的定時發布數據; 所述刪除數據請求包括所要刪除的定時發布數據的唯一標識和發布時間; 所述更新數據請求包括:更新前定時發布數據的唯一標識、發布時間,以及更新后的定時發布數據。
3.根據權利要求2所述的方法,其特征在于,所述根據所述操作請求,寫增加文件或刪除文件,包括: 判斷所述操作請求為增加數據請求、刪除數據請求、更新數據請求中的哪一種; 若所述操作請求為增加數據請求,以append文件的方式,將所要新增的定時發布數據的唯一標識和發布內容記錄到所述所要新增的定時發布數據的發布時間對應的增加文件中; 若所述操作請求為刪除數據請求,以append文件的方式,將所要刪除的定時發布數據的唯一標識記錄到所述所要刪除的定時發布數據的發布時間對應的刪除文件中; 若所述操作請求為更新數據請求,以append文件的方式,將更新前定時發布數據的唯一標識記錄到所述更新前定時發布數據的發布時間對應的刪除文件中,并將更新后定時發布數據的唯一標識、發布內容記錄到更新后定時發布數據的發布時間對應的增加文件中。
4.根據權利要求2所述的方法,其特征在于,所述接收對定時發布數據的操作請求包括:根據用戶標識,確定所述用戶標識對應的共享緩存隊列,通過所述共享緩存隊列接收所述操作請求; 所述根據所述操作請求,寫增加文件或刪除文件包括:根據用戶標識,確定所述用戶標識對應的線程隊列,通過所述線程隊列接收所述操作請求,再通過所述線程隊列對應的線程寫增加文件或刪除文件。
5.根據權利要求4所述的方法,其特征在于,所述用戶標識為用戶唯一對應的用戶號碼; 所述根據用戶標識,確定所述用戶標識對應的共享緩存隊列包括:根據所述用戶號碼與共享緩存隊列的數目的求余結果確定所述對應的共享緩存隊列; 所述根據用戶標識,確定所述用戶標識對應的線程隊列包括:根據所述用戶號碼與線程隊列的數目的求余結果確定所述對應的線程隊列。
6.根據權利要求2所述的方法,其特征在于,所述方法還包括: 根據各發布時間對應的增加文件和刪除文件,確定所述各發布時間所要發布的定時發布數據,并發布所述定時發布數據。
7.根據權利要求6所述的方法,其特征在于,所述根據各發布時間對應的增加文件和刪除文件,確定所述各發布時間所要發布的定時發布數據,包括: 讀取各發布時間對應的刪除文件; 讀取各發布時間對應的增加文件中的定時發布數據的唯一標識,并判斷所述定時發布數據的唯一標識是否記錄在刪除文件中; 若否,則所述定時發布數據為所要發布的定時發布數據;若是,則所述定時發布數據不是所要發布的定時發布數據。
8.一種定時發布數據的處理裝置,其特征在于,所述裝置包括: 接收模塊,用于接收對定時發布數據的操作請求; 處理模塊,用于根據所述操作請求,寫增加文件或刪除文件,所述增加文件對應于所要新增或更新后的定時發布數據,所述刪除文件對應于所要刪除或更新前的定時發布數據,所述增加文件和所述刪除文件以定時發布數據的發布時間為索引。
9.根據權利要求8所述的裝置,其特征在于,所述定時發布數據包括唯一標識、發布時間和發布內容; 所述接收模塊用于接收用戶對定時發布數據的操作請求,所述操作請求包括增加數據請求、刪除數據請求和更新數據請求; 所述增加數據請求包括所要新增的定時發布數據; 所述刪除數據請求包括所要刪除的定時發布數據的唯一標識和發布時間; 所述更新數據請求包括:更新前定時發布數據的唯一標識、發布時間,以及更新后的定時發布數據。
10.根據權利要求9所述的裝置,其特征在于,所述文件處理模塊包括判斷單元和文件修改單元; 所述判斷單元,用于判斷所述操作請求為增加數據請求、刪除數據請求、更新數據請求中的哪一種; 所述文件修改單元,用于: 在所述操作請求為增加數據請求時,以append文件的方式,將所要新增的定時發布數據的唯一標識和發布內容記錄到所述所要新增的定時發布數據的發布時間對應的增加文件中; 在所述操作請求為刪除數據請求時,以append文件的方式,將所要刪除的定時發布數據的唯一標識記錄到所述所要刪除的定時發布數據的發布時間對應的刪除文件中; 在所述操作請求為更新數據請求時,以append文件的方式,將更前的定時發布數據的唯一標識記錄到所述更新前的定時發布數據的發布時間對應的刪除文件中,并將更新后的定時發布數據的唯一標識、發布內容記錄到更新后的定時發布數據的發布時間對應的增加文件中。
11.根據權利要求9所述的裝置,其特征在于,所述接收模塊用于根據用戶標識,確定所述用戶標識對應的共享緩存隊列,通過所述共享緩存隊列接收所述操作請求; 所述處理模塊,用于根據用戶標識,確定所述用戶標識對應的線程隊列,通過所述線程隊列接收所述操作請求,再通過所述線程隊列對應的線程寫增加文件或刪除文件。
12.根據權利要求11所述的裝置,其特征在于,所述用戶標識為用戶唯一對應的用戶號碼; 所述接收模塊,用于根據所述用戶號碼與共享緩存隊列的數目的求余結果確定所述對應的共享緩存隊列; 所述處理模塊,用于根據所述用戶號碼與線程隊列的數目的求余結果確定所述對應的線程隊列。
13.根據權利要求9所述的裝置,其特征在于,所述裝置還包括發布模塊,所述發布模塊用于根據各發布時間對應的增加文件和刪除文件,確定所述各發布時間所要發布的定時發布數據,并發布所述定時發布數據。
14.根據權利要求13所述的裝置,其特征在于,所述發布模塊用于讀取各發布時間對應的刪除文件;以及讀取各發布時間對應的增加文件中的定時發布數據的唯一標識,并判斷所述定時發布數據的唯一標識是否記錄在刪除文件中;若否,則確定所述定時發布數據為所要發布的定時發布數據,若是,則確定所述定時發布數據不是所要發布的定時發布數據。
【文檔編號】G06F9/46GK104426926SQ201310367744
【公開日】2015年3月18日 申請日期:2013年8月21日 優先權日:2013年8月21日
【發明者】祝雄鋒, 蔡曉鵬, 劉洋, 胡戊, 林潔文 申請人:騰訊科技(深圳)有限公司