亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)處理方法及裝置與流程

文檔序號(hào):12597847閱讀:272來源:國知局
一種數(shù)據(jù)處理方法及裝置與流程

本發(fā)明的實(shí)施方式涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,更具體地,本發(fā)明的實(shí)施方式涉及一種數(shù)據(jù)處理方法及裝置。



背景技術(shù):

本部分旨在為權(quán)利要求書中陳述的本發(fā)明的實(shí)施方式提供背景或上下文。此處的描述不因?yàn)榘ㄔ诒静糠种芯统姓J(rèn)是現(xiàn)有技術(shù)。

隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,網(wǎng)絡(luò)服務(wù)提供商為用戶提供便捷的網(wǎng)絡(luò)服務(wù)的同時(shí),也需要不斷對(duì)數(shù)據(jù)庫中存儲(chǔ)的數(shù)據(jù)進(jìn)行更新,以使用戶通過互聯(lián)網(wǎng)體驗(yàn)更加便捷的網(wǎng)絡(luò)服務(wù)。

通常情況下,在數(shù)據(jù)庫系統(tǒng)中,對(duì)數(shù)據(jù)進(jìn)行處理時(shí)都是直接在數(shù)據(jù)庫中進(jìn)行操作,當(dāng)處理量較小的情況下,數(shù)據(jù)庫響應(yīng)速度較快,但是,當(dāng)處理量較大的情況下,數(shù)據(jù)庫處理速度較慢,從而影響響應(yīng)速度,造成用戶等待的情況。例如,在用戶社交場(chǎng)景中,針對(duì)一個(gè)用戶發(fā)送的帖子,其他用戶會(huì)針對(duì)該帖子進(jìn)行評(píng)論、點(diǎn)贊等操作,其中評(píng)論以及點(diǎn)贊等操作都會(huì)涉及到計(jì)數(shù)統(tǒng)計(jì)的功能。

在現(xiàn)有技術(shù)中,用戶社交數(shù)據(jù)的記錄包括兩部分,即:記錄在數(shù)據(jù)庫服務(wù)器的緩存中和記錄在數(shù)據(jù)庫中,用戶的所有社交行為數(shù)據(jù)實(shí)時(shí)記錄在上述緩存和數(shù)據(jù)庫中的。例如一個(gè)用戶對(duì)某個(gè)帖子進(jìn)行點(diǎn)贊,那么該用戶的點(diǎn)贊記錄,會(huì)實(shí)時(shí)記錄到緩存和數(shù)據(jù)庫中,包括對(duì)點(diǎn)贊數(shù)計(jì)數(shù)加1的記錄,這些操作都完成后,將例如點(diǎn)贊數(shù)計(jì)數(shù)加1的操作結(jié)果反饋給發(fā)布帖子的用戶。但是這種方式在用戶數(shù)量大、操作量較大的情況下,由于對(duì)數(shù)據(jù)庫的操作速度有限,會(huì)出現(xiàn)用戶等待的情況,具體表現(xiàn)為用戶在點(diǎn)贊之后,無法顯示操作結(jié)果,或者操作結(jié)果顯示錯(cuò)誤,這就嚴(yán)重影響了用戶感知。

目前,在數(shù)據(jù)庫系統(tǒng)中,對(duì)數(shù)據(jù)進(jìn)行處理時(shí)都是直接在數(shù)據(jù)庫中進(jìn)行操作,當(dāng)處理量較小的情況下,數(shù)據(jù)庫響應(yīng)速度較快,但是,當(dāng)處理量較大的情況下,數(shù)據(jù)庫處理速度較慢,從而影響響應(yīng)速度,造成用戶等待的情況。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明提供了一種數(shù)據(jù)處理方法及裝置,提高數(shù)據(jù)庫的處理速度,加快響應(yīng)速度,提升用戶的感知。

一種數(shù)據(jù)處理方法,包括接收操作請(qǐng)求;在確定出接收到的操作請(qǐng)求的包括第一類型操作時(shí),對(duì)緩存中所述第一類型操作的操作對(duì)象執(zhí)行所述第一類型操作,并對(duì)數(shù)據(jù)庫中所述第一類型操作的操作對(duì)象不做處理;以及在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中所述操作請(qǐng)求的操作對(duì)象執(zhí)行所述操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中所述操作請(qǐng)求的操作對(duì)象執(zhí)行所述操作請(qǐng)求。

在確定出接收到的操作請(qǐng)求包括第一類型操作時(shí),還包括:將所述第一類型操作寫入任務(wù)隊(duì)列。

還包括:按照設(shè)定周期,獲取所述任務(wù)隊(duì)列中寫入的第一類型操作;對(duì)數(shù)據(jù)庫中所述寫入的第一類型操作的操作對(duì)象執(zhí)行所述寫入的第一類型操作。

所述任務(wù)隊(duì)列是同時(shí)維護(hù)在獨(dú)立于數(shù)據(jù)庫服務(wù)器的物理設(shè)備上的內(nèi)存和硬盤中的先入先出隊(duì)列。

在確定出接收到的操作請(qǐng)求包括第一類型操作時(shí),還包括:在數(shù)據(jù)庫中執(zhí)行所述操作請(qǐng)求中包括的其他操作。

還包括:接收數(shù)據(jù)獲取請(qǐng)求;按照所述數(shù)據(jù)獲取請(qǐng)求,在緩存中獲得與所述數(shù)據(jù)獲取請(qǐng)求對(duì)應(yīng)的數(shù)據(jù),并返回所述對(duì)應(yīng)的數(shù)據(jù)。

所述第一類型操作是對(duì)數(shù)值參數(shù)進(jìn)行加1或者減1的操作。

一種數(shù)據(jù)處理裝置,包括:接收模塊,用于接收操作請(qǐng)求;處理模塊,用于在確定出接收到的操作請(qǐng)求的包括第一類型操作時(shí),對(duì)緩存中所述第一類型操作的操作對(duì)象執(zhí)行所述第一類型操作,并對(duì)數(shù)據(jù)庫中所述第一類型操作的操作對(duì)象不做處理;以及在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中所述操作請(qǐng)求的操作對(duì)象執(zhí)行所述操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中所述操作請(qǐng)求的操作對(duì)象執(zhí)行所述操作請(qǐng)求。

所述處理模塊,還用于將所述第一類型操作寫入任務(wù)隊(duì)列。

所述處理模塊,還用于按照設(shè)定周期,獲取所述任務(wù)隊(duì)列中寫入的第一類型操作;對(duì)數(shù)據(jù)庫中所述寫入的第一類型操作的操作對(duì)象執(zhí)行所述寫入的第一類型操作。

優(yōu)選的,所述任務(wù)隊(duì)列是同時(shí)維護(hù)在獨(dú)立于數(shù)據(jù)庫服務(wù)器的物理設(shè)備上的內(nèi)存和硬盤中的先入先出隊(duì)列。

所述處理模塊,在確定出接收到的操作請(qǐng)求包括第一類型操作時(shí),還用于在數(shù)據(jù)庫中執(zhí)行所述操作請(qǐng)求中包括的其他操作。

所述接收模塊,還用于接收數(shù)據(jù)獲取請(qǐng)求;所述處理模塊,還用于按照所述數(shù)據(jù)獲取請(qǐng)求,在緩存中獲得與所述數(shù)據(jù)獲取請(qǐng)求對(duì)應(yīng)的數(shù)據(jù),并返回所述對(duì)應(yīng)的數(shù)據(jù)。

優(yōu)選的,所述第一類型操作是對(duì)數(shù)值參數(shù)進(jìn)行加1或者減1的操作。

通過采用上述技術(shù)方案,針對(duì)接收到的操作請(qǐng)求,在確定出接收到的操作請(qǐng)求的包括第一類型操作時(shí),對(duì)緩存中第一類型操作的操作對(duì)象執(zhí)行第一類型操作,并對(duì)數(shù)據(jù)庫中第一類型操作的操作對(duì)象不做處理,以及在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求,這樣,將接收到的操作請(qǐng)求所包含的操作類型做出區(qū)分,如果包括第一類型操作時(shí),則僅對(duì)緩存中該第一類型操作對(duì)應(yīng)的操作對(duì)象執(zhí)行操作,而不對(duì)數(shù)據(jù)庫中該第一類型操作的操作對(duì)象做出處理,這樣,當(dāng)?shù)谝活愋筒僮鞯那闆r較多的情況下,可以較好地緩解數(shù)據(jù)庫的壓力,提高操作速度,提升響應(yīng)速度,進(jìn)而提高用戶體驗(yàn)。

附圖說明

通過參考附圖閱讀下文的詳細(xì)描述,本發(fā)明示例性實(shí)施方式的上述以及其他目的、特征和優(yōu)點(diǎn)將變得易于理解。在附圖中,以示例性而非限制性的方式示出了本發(fā)明的若干實(shí)施方式,其中:

圖1示意性地示出了根據(jù)本發(fā)明實(shí)施方式的應(yīng)用場(chǎng)景示意圖;

圖2示意性地示出了根據(jù)本發(fā)明實(shí)施方式的數(shù)據(jù)處理方法流程圖;

圖3示意性地示出了根據(jù)本發(fā)明實(shí)施方式的數(shù)據(jù)處理方法流程圖;

圖4示意性地示出了根據(jù)本發(fā)明實(shí)施方式的數(shù)據(jù)處理裝置結(jié)構(gòu)組成示意圖;

圖5示意性地示出了根據(jù)本發(fā)明又一實(shí)施例的數(shù)據(jù)處理裝置結(jié)構(gòu)組成示意圖;

圖6示意性地示出了根據(jù)本發(fā)明又一實(shí)施例的數(shù)據(jù)處理裝置結(jié)構(gòu)組成示意圖;

圖7示意性地示出了根據(jù)本發(fā)明再一實(shí)施例的用于數(shù)據(jù)處理方法的程序產(chǎn)品示意圖。

在附圖中,相同或?qū)?yīng)的標(biāo)號(hào)表示相同或?qū)?yīng)的部分。

具體實(shí)施方式

下面將參考若干示例性實(shí)施方式來描述本發(fā)明的原理和精神。應(yīng)當(dāng)理解,給出這些實(shí)施方式僅僅是為了使本領(lǐng)域技術(shù)人員能夠更好地理解進(jìn)而實(shí)現(xiàn)本發(fā)明,而并非以任何方式限制本發(fā)明的范圍。相反,提供這些實(shí)施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。

本領(lǐng)域技術(shù)人員知道,本發(fā)明的實(shí)施方式可以實(shí)現(xiàn)為一種系統(tǒng)、裝置、設(shè)備、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本公開可以具體實(shí)現(xiàn)為以下形式,即:完全的硬件、完全的軟件(包括固件、駐留軟件、微代碼等),或者硬件和軟件結(jié)合的形式。

根據(jù)本發(fā)明的實(shí)施方式,提出了一種數(shù)據(jù)處理方法及裝置。

在本文中,需要理解的是,附圖中的任何元素?cái)?shù)量均用于示例而非限制,以及任何命名都僅用于區(qū)分,而不具有任何限制含義。

下面參考本發(fā)明的若干代表性實(shí)施方式,詳細(xì)闡釋本發(fā)明的原理和精神。

發(fā)明概述

本發(fā)明人發(fā)現(xiàn),現(xiàn)有技術(shù)中,在數(shù)據(jù)庫系統(tǒng)中,對(duì)數(shù)據(jù)進(jìn)行處理時(shí)都是直接在數(shù)據(jù)庫中進(jìn)行操作,當(dāng)處理量較小的情況下,數(shù)據(jù)庫響應(yīng)速度較快,但是,當(dāng)處理量較大的情況下,數(shù)據(jù)庫處理速度較慢,從而影響響應(yīng)速度,造成用戶等待的情況。例如,在用戶社交場(chǎng)景中,針對(duì)一個(gè)用戶發(fā)送的帖子,其他用戶會(huì)針對(duì)該帖子進(jìn)行評(píng)論、點(diǎn)贊等操作,其中評(píng)論以及點(diǎn)贊等操作都會(huì)涉及到計(jì)數(shù)統(tǒng)計(jì)的功能。在現(xiàn)有技術(shù)中,用戶社交數(shù)據(jù)的記錄包括兩部分,即:記錄在數(shù)據(jù)庫服務(wù)器的緩存中和記錄在數(shù)據(jù)庫中,用戶的所有社交行為數(shù)據(jù)實(shí)時(shí)記錄在上述緩存和數(shù)據(jù)庫中的。例如一個(gè)用戶對(duì)某個(gè)帖子進(jìn)行點(diǎn)贊,那么該用戶的點(diǎn)贊記錄,會(huì)實(shí)時(shí)記錄到緩存和數(shù)據(jù)庫中,包括對(duì)點(diǎn)贊數(shù)計(jì)數(shù)加1的記錄,這些操作都完成后,將例如點(diǎn)贊數(shù)計(jì)數(shù)加1的操作結(jié)果反饋給發(fā)布帖子的用戶。但是這種方式在用戶數(shù)量大、操作量較大的情況下,由于對(duì)數(shù)據(jù)庫的操作速度有限,會(huì)出現(xiàn)用戶等待的情況,具體表現(xiàn)為用戶在點(diǎn)贊之后,無法顯示操作結(jié)果,或者操作結(jié)果顯示錯(cuò)誤,這就嚴(yán)重影響了用戶感知?,F(xiàn)有技術(shù)中缺乏一種數(shù)據(jù)庫技術(shù)的改進(jìn)方式,用于提高數(shù)據(jù)庫的處理速度,加快響應(yīng)速度,提升用戶的感知。

本發(fā)明提出一種數(shù)據(jù)處理方法及裝置,其中,在該數(shù)據(jù)處理方法中,接收操作請(qǐng)求;在確定出接收到的操作請(qǐng)求的包括第一類型操作時(shí),對(duì)緩存中第一類型操作的操作對(duì)象執(zhí)行第一類型操作,并對(duì)數(shù)據(jù)庫中第一類型操作的操作對(duì)象不做處理;以及在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中操作請(qǐng)求的操作對(duì)象執(zhí)行所述操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求。這樣,將接收到的操作請(qǐng)求所包含的操作類型做出區(qū)分,如果包括第一類型操作時(shí),則僅對(duì)記錄在數(shù)據(jù)庫服務(wù)器的緩存中的第一類型操作的操作對(duì)象執(zhí)行操作,而不對(duì)記錄在數(shù)據(jù)庫中的第一類型操作的操作對(duì)象做出處理,這樣,當(dāng)?shù)谝活愋筒僮鞯那闆r較多的情況下,可以較好地緩解數(shù)據(jù)庫的壓力,提高操作速度,提升響應(yīng)速度,進(jìn)而提高用戶體驗(yàn)。

在介紹了本發(fā)明的基本原理之后,下面具體介紹本發(fā)明的各種非限制性實(shí)施方式。

應(yīng)用場(chǎng)景總覽

首先參考圖1,如圖1所示,為本發(fā)明實(shí)施例提供的數(shù)據(jù)處理方法的應(yīng)用場(chǎng)景示意圖,包括用戶10,用戶終端101和服務(wù)器側(cè)102,其中,用戶10可以通過用戶終端101訪問社交網(wǎng)絡(luò)。具體地,用戶終端101中可安裝相應(yīng)的社交類應(yīng)用客戶端,或者是瀏覽器。

服務(wù)器側(cè)102為用戶10通過用戶終端101訪問的社交網(wǎng)絡(luò)的服務(wù)器側(cè)。用戶10在用戶終端101中打開社交網(wǎng)絡(luò)主頁面進(jìn)行登錄,并輸入用戶名和密碼后,可以登陸社交網(wǎng)絡(luò)服務(wù)器側(cè)102,在用戶訪問服務(wù)器側(cè)102的過程中,向服務(wù)器側(cè)102發(fā)送操作請(qǐng)求,服務(wù)器側(cè)102接收操作請(qǐng)求,并在確定出接收到的操作請(qǐng)求的包括第一類型操作時(shí),對(duì)緩存中第一類型操作的操作對(duì)象執(zhí)行第一類型操作,并對(duì)數(shù)據(jù)庫中第一類型操作的操作對(duì)象不做處理,在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求。

其中,用戶終端和服務(wù)器側(cè)可通過因特網(wǎng)進(jìn)行通信。用戶終端可以為手機(jī)、平板電腦或者臺(tái)式電腦等。

示例性方法

下面結(jié)合圖1的應(yīng)用場(chǎng)景,參考圖2~圖7來描述根據(jù)本發(fā)明示例性實(shí)施方式的數(shù)據(jù)處理方法。需要注意的是,上述應(yīng)用場(chǎng)景僅是為了便于理解本發(fā)明的精神和原理而示出,本發(fā)明的實(shí)施方式在此方面不受任何限制。相反,本發(fā)明的實(shí)施方式可以應(yīng)用于適用的任何場(chǎng)景。

圖2為本發(fā)明實(shí)施例提出一種數(shù)據(jù)處理方法,其具體處理流程如下述:

步驟21,用戶發(fā)送操作請(qǐng)求。

為便于闡述,在本發(fā)明實(shí)施例提出的技術(shù)方案中,將以用戶通過手機(jī)登錄社交網(wǎng)絡(luò)為例進(jìn)行詳細(xì)闡述。

假設(shè)用戶A通過手機(jī)登錄社交網(wǎng)絡(luò),并在社交網(wǎng)絡(luò)中發(fā)表一篇文章。用戶B是用戶A在該社交網(wǎng)絡(luò)中的好友,用戶B也登錄社交網(wǎng)絡(luò),并看到用戶A發(fā)送的文章。用戶B對(duì)該文章進(jìn)行點(diǎn)贊。用戶A發(fā)表文章、用戶B對(duì)該文章進(jìn)行點(diǎn)贊,這些過程對(duì)應(yīng)了一系列用戶向服務(wù)器側(cè)發(fā)送的操作請(qǐng)求。

一種較佳地實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例提出的技術(shù)方案中,為便于闡述,以操作請(qǐng)求是用戶B對(duì)該文章進(jìn)行點(diǎn)贊為例進(jìn)行詳細(xì)闡述。

步驟22,服務(wù)器接收用戶發(fā)送的操作請(qǐng)求。

步驟23,服務(wù)器判斷接收到的操作請(qǐng)求中是否包括第一類型操作,如果判斷結(jié)果為是,執(zhí)行步驟24,反之,如果判斷結(jié)果為否,執(zhí)行步驟25。

在本發(fā)明實(shí)施例提出的技術(shù)方案中,第一類型操作可以是對(duì)數(shù)值參數(shù)進(jìn)行加1或者減1的操作。仍然以在社交網(wǎng)絡(luò)中發(fā)布數(shù)據(jù)為例,即上述步驟21中的用戶A發(fā)布文章為例進(jìn)行詳細(xì)闡述。針對(duì)用戶B對(duì)該文章進(jìn)行點(diǎn)贊的操作來說,對(duì)應(yīng)的操作請(qǐng)求中包含了點(diǎn)贊計(jì)數(shù)的操作,即對(duì)點(diǎn)贊的數(shù)量加1,若之后當(dāng)用戶B點(diǎn)贊之后取消時(shí),則對(duì)點(diǎn)贊的數(shù)量減1,則在本發(fā)明實(shí)施例提出的技術(shù)方案中,操作請(qǐng)求中的點(diǎn)贊計(jì)數(shù)作為第一類型操作。而針對(duì)對(duì)用戶A發(fā)布的文章點(diǎn)贊的用戶ID、即用戶B的ID進(jìn)行記錄,則作為除第一類型操作之外的其它類型操作。

步驟24,服務(wù)器在確定出接收到的操作請(qǐng)求包括第一類型操作時(shí),對(duì)緩存中第一類型操作的操作對(duì)象執(zhí)行第一類型操作,并對(duì)數(shù)據(jù)庫中第一類型操作的操作對(duì)象不做處理。

在通常情況下,用戶社交數(shù)據(jù)的記錄包括兩部分,即:記錄在數(shù)據(jù)庫服務(wù)器的緩存中和記錄在數(shù)據(jù)庫中,用戶的所有社交行為數(shù)據(jù)實(shí)時(shí)記錄在上述緩存和數(shù)據(jù)庫中的。但是,在本發(fā)明實(shí)施例提出的技術(shù)方案中,當(dāng)服務(wù)器確定出操作請(qǐng)求中包含第一類型操作時(shí),僅對(duì)記錄在數(shù)據(jù)庫服務(wù)器的緩存中的該第一類型操作的操作對(duì)象進(jìn)行更改,并不對(duì)記錄在數(shù)據(jù)庫中的該第一類型操作的操作對(duì)象進(jìn)行更改。

仍以用戶B發(fā)送的操作請(qǐng)求為例進(jìn)行詳細(xì)闡述。針對(duì)用戶B發(fā)送的操作請(qǐng)求,服務(wù)器側(cè)確定對(duì)應(yīng)的操作請(qǐng)求中包含了點(diǎn)贊計(jì)數(shù)的操作,則將操作請(qǐng)求中的點(diǎn)贊計(jì)數(shù)作為第一類型操作。服務(wù)器側(cè)對(duì)記錄在數(shù)據(jù)庫的緩存中的該第一類型操作的操作對(duì)象(即點(diǎn)贊計(jì)數(shù)的參數(shù))進(jìn)行加1操作,并且針對(duì)數(shù)據(jù)庫中存儲(chǔ)的點(diǎn)贊計(jì)數(shù)的參數(shù)不做處理。

通過將操作請(qǐng)求中的第一類型操作剝離,可以較好地避免用戶量較大,或者某個(gè)時(shí)段用戶并發(fā)請(qǐng)求量突然膨脹時(shí)造成的用戶等待情況,或者統(tǒng)計(jì)錯(cuò)誤的情形,提升用戶體驗(yàn)。

步驟25,在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求。

以用戶C為用戶A在社交網(wǎng)絡(luò)中的好友為例進(jìn)行詳細(xì)闡述,若用戶C對(duì)用戶A發(fā)布的文章進(jìn)行點(diǎn)贊之后,用戶C又發(fā)送一個(gè)操作請(qǐng)求,該用戶C再次發(fā)送的操作請(qǐng)求是用于請(qǐng)求刪除與用戶A的好友關(guān)系,則該用戶C再次發(fā)送的操作請(qǐng)求中是不包括第一操作類型的,則該種情況下,按照本發(fā)明實(shí)施例提出的技術(shù)方案中,對(duì)緩存中的用戶C的好友關(guān)系進(jìn)行對(duì)應(yīng)操作,解除用戶C和用戶A之間的好友關(guān)系,并對(duì)數(shù)據(jù)庫中存儲(chǔ)的用戶A的好友關(guān)系進(jìn)行對(duì)應(yīng)操作,解除用戶A和用戶C之間的好友關(guān)系。

可選地,在上述步驟24在確定出接收到的操作請(qǐng)求包括第一類型操作時(shí),還包括:將第一類型操作寫入任務(wù)隊(duì)列。以及按照設(shè)定周期,獲取任務(wù)隊(duì)列中寫入的第一類型操作,對(duì)數(shù)據(jù)庫中寫入的第一類型操作的操作對(duì)象執(zhí)行寫入的第一類型操作。

其中,在本發(fā)明實(shí)施例上述提出的技術(shù)方案中,任務(wù)隊(duì)列是同時(shí)維護(hù)在獨(dú)立于數(shù)據(jù)庫服務(wù)器的物理設(shè)備上的內(nèi)存和硬盤中的先入先出隊(duì)列。

仍以上述用戶B發(fā)送的操作請(qǐng)求為例進(jìn)行詳細(xì)闡述。在本發(fā)明實(shí)施例提出的技術(shù)方案中,任務(wù)隊(duì)列在維護(hù)時(shí),存儲(chǔ)任務(wù)隊(duì)列的物理設(shè)備,可以是和存儲(chǔ)數(shù)據(jù)庫的物理設(shè)備是相同的物理設(shè)備,但是該種情況下任務(wù)隊(duì)列和數(shù)據(jù)庫需要位于同一物理設(shè)備中的不同的存儲(chǔ)區(qū)。

一種較佳的實(shí)現(xiàn)方式,存儲(chǔ)任務(wù)隊(duì)列的物理設(shè)備和數(shù)據(jù)庫服務(wù)器的物理設(shè)備是不相同的物理設(shè)備,即任務(wù)隊(duì)列單獨(dú)存儲(chǔ),這樣可以較好地提升處理速度,并且做好容災(zāi)備份,防止任務(wù)隊(duì)列中的數(shù)據(jù)消失無法找回。

任務(wù)隊(duì)列中存儲(chǔ)的第一類型操作,需要按照設(shè)定周期,獲取任務(wù)隊(duì)列中的第一類型操作,對(duì)數(shù)據(jù)庫中寫入的第一類型操作的操作對(duì)象執(zhí)行寫入的第一類型操作。在本發(fā)明實(shí)例提出的技術(shù)方案中,任務(wù)隊(duì)列中存儲(chǔ)的第一類型操作,采取先入先出的模式,即在對(duì)數(shù)據(jù)庫中寫入的第一類型操作的操作對(duì)象執(zhí)行寫入的第一類型操作時(shí),首先獲取任務(wù)隊(duì)列中最先存儲(chǔ)的第一類型操作,同時(shí)在所述任務(wù)隊(duì)列中刪除該最先存儲(chǔ)的第一類型操作,并對(duì)該獲取的第一類型操作的操作對(duì)象執(zhí)行該第一類型操作。。

可選地,在獲取任務(wù)隊(duì)列中的第一類型操作時(shí)可以設(shè)置在閑時(shí)獲取任務(wù)隊(duì)列中的第一類型操作。其中,針對(duì)用于記錄社交網(wǎng)絡(luò)數(shù)據(jù)的服務(wù)器來說,閑時(shí)可以是指用戶操作量相對(duì)其它時(shí)段較少的時(shí)間段,例如工作日的白天或周末的夜晚等。

在本發(fā)明實(shí)施例提出的技術(shù)方案中,在確定接收到的操作請(qǐng)求包括第一類型操作時(shí),除在數(shù)據(jù)庫中的緩存中針對(duì)第一類型操作的操作對(duì)象執(zhí)行第一類型操作的同時(shí),也可以在數(shù)據(jù)庫中執(zhí)行操作請(qǐng)求中包括的其它操作。以用戶B對(duì)用戶A發(fā)布的文章進(jìn)行點(diǎn)贊的操作為例進(jìn)行詳細(xì)闡述。點(diǎn)贊計(jì)數(shù)作為第一類型操作,而針對(duì)對(duì)用戶A發(fā)布的文章點(diǎn)贊的用戶ID、即用戶B的ID進(jìn)行記錄,則作為除第一類型操作之外的其它類型操作。按照本發(fā)明實(shí)施例提出的技術(shù)方案,在數(shù)據(jù)庫中的緩存中執(zhí)行點(diǎn)贊計(jì)數(shù),而在數(shù)據(jù)庫中執(zhí)行點(diǎn)贊計(jì)數(shù)和記錄用戶B的標(biāo)識(shí)的操作。

可選地,在上述步驟24~步驟25之后,如圖3所示,還包括:

步驟31,用戶發(fā)送數(shù)據(jù)獲取請(qǐng)求。

在本步驟中,將以用戶A為例進(jìn)行詳細(xì)闡述。前文假設(shè)用戶A通過手機(jī)登錄社交網(wǎng)絡(luò),并在社交網(wǎng)絡(luò)中發(fā)表一篇文章。用戶B是用戶A在該社交網(wǎng)絡(luò)中的好友,用戶B也登錄社交網(wǎng)絡(luò),并看到用戶A發(fā)送的文章。用戶B對(duì)該文章進(jìn)行點(diǎn)贊。

在某一時(shí)刻,用戶A發(fā)送數(shù)據(jù)獲取請(qǐng)求,用于獲取對(duì)該文章的總點(diǎn)贊數(shù)。

步驟32,服務(wù)器接收數(shù)據(jù)獲取請(qǐng)求。

步驟33,按照數(shù)據(jù)獲取請(qǐng)求,在緩存中獲得與數(shù)據(jù)獲取請(qǐng)求對(duì)應(yīng)的數(shù)據(jù),并返回對(duì)應(yīng)的數(shù)據(jù)。

服務(wù)器按照用戶A發(fā)送的數(shù)據(jù)獲取請(qǐng)求,在緩存中獲得好友對(duì)對(duì)該文章的總點(diǎn)贊數(shù),并將獲取結(jié)果呈現(xiàn)給用戶A。

相比現(xiàn)有技術(shù)來說,在為用戶進(jìn)行呈現(xiàn)時(shí),是從緩存中獲得數(shù)據(jù),而不是直接在數(shù)據(jù)庫中獲取,減少了對(duì)數(shù)據(jù)庫的操作,避免了在數(shù)據(jù)庫中的海量數(shù)據(jù)中進(jìn)行查找,節(jié)省資源,提升效率。進(jìn)一步地,本發(fā)明實(shí)施例提出的技術(shù)方案中,將第一類型操作和其他操作進(jìn)行剝離,提高了操作請(qǐng)求的處理效率,提升了產(chǎn)品性能。

示例性設(shè)備

在介紹了本發(fā)明示例性實(shí)施方式的方法之后,接下來,參考圖4描述本發(fā)明示例性實(shí)施方式的數(shù)據(jù)處理裝置。

圖4為本發(fā)明實(shí)施例提供的一種的結(jié)構(gòu)示意圖之一,如圖4所示,可以包括如下模塊:

接收模塊401,用于接收操作請(qǐng)求。

處理模塊402,用于在確定出接收到的操作請(qǐng)求的包括第一類型操作時(shí),對(duì)緩存中所述第一類型操作的操作對(duì)象執(zhí)行所述第一類型操作,并對(duì)數(shù)據(jù)庫中所述第一類型操作的操作對(duì)象不做處理;以及在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中所述操作請(qǐng)求的操作對(duì)象執(zhí)行所述操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中所述操作請(qǐng)求的操作對(duì)象執(zhí)行所述操作請(qǐng)求。

可選地,上述處理模塊402,還用于將所述第一類型操作寫入任務(wù)隊(duì)列。

可選地,上述處理模塊402,還用于按照設(shè)定周期,獲取所述任務(wù)隊(duì)列中寫入的第一類型操作;對(duì)數(shù)據(jù)庫中所述寫入的第一類型操作的操作對(duì)象執(zhí)行所述寫入的第一類型操作。

具體地,上述處理模塊402獲取的所述任務(wù)隊(duì)列是同時(shí)維護(hù)在獨(dú)立于數(shù)據(jù)庫服務(wù)器的物理設(shè)備上的內(nèi)存和硬盤中的先入先出隊(duì)列。

可選地,上述處理模塊402,還用于在數(shù)據(jù)庫中執(zhí)行所述操作請(qǐng)求中包括的其他操作。

可選地,上述接收模塊401,還用于接收數(shù)據(jù)獲取請(qǐng)求;所述處理模塊402,還用于按照所述數(shù)據(jù)獲取請(qǐng)求,在緩存中獲得與所述數(shù)據(jù)獲取請(qǐng)求對(duì)應(yīng)的數(shù)據(jù),并返回所述對(duì)應(yīng)的數(shù)據(jù)。

具體地,上述處理模塊402確定出的所述第一類型操作是對(duì)數(shù)值參數(shù)進(jìn)行加1或者減1的操作。

上述本發(fā)明實(shí)施例提出的數(shù)據(jù)處理裝置,其具體組成模塊以及實(shí)施原理請(qǐng)參見上述方法實(shí)施例中的詳細(xì)闡述,不再贅述。

在本發(fā)明實(shí)施例上述提出的數(shù)據(jù)處理裝置中,將接收到的操作請(qǐng)求所包含的操作類型做出區(qū)分,如果包括第一類型操作時(shí),對(duì)緩存中第一類型操作的操作對(duì)象執(zhí)行第一類型操作,并對(duì)數(shù)據(jù)庫中第一類型操作的操作對(duì)象不做處理,這樣,當(dāng)?shù)谝活愋筒僮鞯那闆r較多的情況下,可以較好地緩解數(shù)據(jù)庫的壓力,提高操作速度,提升響應(yīng)速度,進(jìn)而提高用戶體驗(yàn)。

示例性設(shè)備

在介紹了本發(fā)明示例性實(shí)施方式的方法和裝置之后,接下來,介紹根據(jù)本發(fā)明的另一示例性實(shí)施方式的數(shù)據(jù)處理裝置。

所屬技術(shù)領(lǐng)域的技術(shù)人員能夠理解,本發(fā)明的各個(gè)方面可以實(shí)現(xiàn)為系統(tǒng)、方法或程序產(chǎn)品。因此,本發(fā)明的各個(gè)方面可以具體實(shí)現(xiàn)為以下形式,即:完全的硬件實(shí)施方式、完全的軟件實(shí)施方式(包括固件、微代碼等),或硬件和軟件方面結(jié)合的實(shí)施方式,這里可以統(tǒng)稱為“電路”、“模塊”或“系統(tǒng)”。

在一些可能的實(shí)施方式中,如圖5所示,根據(jù)本發(fā)明的數(shù)據(jù)處理裝置可以至少包括至少一個(gè)處理單元501、以及至少一個(gè)存儲(chǔ)單元502。其中,所述存儲(chǔ)單元501存儲(chǔ)有程序代碼,當(dāng)所述程序代碼被所述處理單元502執(zhí)行時(shí),使得所述處理單元502執(zhí)行本說明書上述“示例性方法”部分中描述的根據(jù)本發(fā)明各種示例性實(shí)施方式的數(shù)據(jù)處理方法中的步驟。例如,所述處理單元可以執(zhí)行如圖2中所示的步驟22,服務(wù)器接收用戶發(fā)送的操作請(qǐng)求。步驟23,服務(wù)器判斷接收到的操作請(qǐng)求中是否包括第一類型操作,如果判斷結(jié)果為是,執(zhí)行步驟24,反之,如果判斷結(jié)果為否,執(zhí)行步驟25。步驟24,服務(wù)器在確定出接收到的操作請(qǐng)求包括第一類型操作時(shí),對(duì)緩存中第一類型操作的操作對(duì)象執(zhí)行第一類型操作,并對(duì)數(shù)據(jù)庫中第一類型操作的操作對(duì)象不做處理。步驟25,在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求。

下面參照?qǐng)D6來描述根據(jù)本發(fā)明的這種實(shí)施方式的數(shù)據(jù)處理裝置600。圖6顯示的數(shù)據(jù)處理裝置600僅僅是一個(gè)示例,不應(yīng)對(duì)本發(fā)明實(shí)施例的功能和使用范圍帶來任何限制。

如圖6所示,數(shù)據(jù)處理裝置600以通用計(jì)算設(shè)備的形式表現(xiàn)。數(shù)據(jù)處理裝置600的組件可以包括但不限于:上述至少一個(gè)處理單元6001、上述至少一個(gè)存儲(chǔ)單元6002、連接不同系統(tǒng)組件(包括處理單元6001和存儲(chǔ)單元6002)的總線6003。

總線6003表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲(chǔ)器總線或者存儲(chǔ)器控制器、外圍總線、處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。

存儲(chǔ)單元6002可以包括易失性存儲(chǔ)器形式的可讀介質(zhì),例如隨機(jī)存取存儲(chǔ)器(RAM)60021和/或高速緩存存儲(chǔ)器60022,還可以進(jìn)一步包括只讀存儲(chǔ)器(ROM)60023。

存儲(chǔ)單元6002還可以包括具有一組(至少一個(gè))程序模塊60024的程序/實(shí)用工具60025,這樣的程序模塊60024包括但不限于:操作系統(tǒng)、一個(gè)或者多個(gè)應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個(gè)或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實(shí)現(xiàn)。

數(shù)據(jù)處理裝置600也可以與一個(gè)或多個(gè)外部設(shè)備6004(例如鍵盤、指向設(shè)備等)通信,還可與一個(gè)或者多個(gè)使得用戶能與數(shù)據(jù)處理裝置600交互的設(shè)備通信,和/或與使得該數(shù)據(jù)處理裝置600能與一個(gè)或多個(gè)其它計(jì)算設(shè)備進(jìn)行通信的任何設(shè)備(例如路由器、調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接口6005進(jìn)行。并且,數(shù)據(jù)處理裝置600還可以通過網(wǎng)絡(luò)適配器6006與一個(gè)或者多個(gè)網(wǎng)絡(luò)(例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖6所示,網(wǎng)絡(luò)適配器6006通過總線6003與用于數(shù)據(jù)處理裝置600的其它模塊通信。應(yīng)當(dāng)理解,盡管圖中未示出,可以結(jié)合數(shù)據(jù)處理裝置600使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設(shè)備驅(qū)動(dòng)器、冗余處理單元、外部磁盤驅(qū)動(dòng)陣列、RAID系統(tǒng)、磁帶驅(qū)動(dòng)器以及數(shù)據(jù)備份存儲(chǔ)系統(tǒng)等。

示例性程序產(chǎn)品

在一些可能的實(shí)施方式中,本發(fā)明提供的數(shù)據(jù)處理方法的各個(gè)方面還可以實(shí)現(xiàn)為一種程序產(chǎn)品的形式,其包括程序代碼,當(dāng)所述程序產(chǎn)品在計(jì)算機(jī)設(shè)備上運(yùn)行時(shí),所述程序代碼用于使所述計(jì)算機(jī)設(shè)備執(zhí)行本說明書上述“示例性方法”部分中描述的根據(jù)本發(fā)明各種示例性實(shí)施方式的數(shù)據(jù)處理方法中的步驟,例如,所述計(jì)算機(jī)設(shè)備可以執(zhí)行如圖2中所示的步驟21,用戶發(fā)送操作請(qǐng)求。步驟22,服務(wù)器接收用戶發(fā)送的操作請(qǐng)求。步驟23,服務(wù)器判斷接收到的操作請(qǐng)求中是否包括第一類型操作,如果判斷結(jié)果為是,執(zhí)行步驟24,反之,如果判斷結(jié)果為否,執(zhí)行步驟25。步驟24,服務(wù)器在確定出接收到的操作請(qǐng)求包括第一類型操作時(shí),對(duì)緩存中第一類型操作的操作對(duì)象執(zhí)行第一類型操作,并對(duì)數(shù)據(jù)庫中第一類型操作的操作對(duì)象不做處理。步驟25,在確定出接收到的操作請(qǐng)求的不包括第一類型操作時(shí),對(duì)緩存中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求,并對(duì)數(shù)據(jù)庫中操作請(qǐng)求的操作對(duì)象執(zhí)行操作請(qǐng)求。

所述程序產(chǎn)品可以采用一個(gè)或多個(gè)可讀介質(zhì)的任意組合。可讀介質(zhì)可以是可讀信號(hào)介質(zhì)或者可讀存儲(chǔ)介質(zhì)??勺x存儲(chǔ)介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個(gè)或多個(gè)導(dǎo)線的電連接、便攜式盤、硬盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦式可編程只讀存儲(chǔ)器(EPROM或閃存)、光纖、便攜式緊湊盤只讀存儲(chǔ)器(CD-ROM)、光存儲(chǔ)器件、磁存儲(chǔ)器件、或者上述的任意合適的組合。

如圖7所示,描述了根據(jù)本發(fā)明的實(shí)施方式的用于數(shù)據(jù)處理的程序產(chǎn)品710,其可以采用便攜式緊湊盤只讀存儲(chǔ)器(CD-ROM)并包括程序代碼,并可以在終端設(shè)備上運(yùn)行。然而,本發(fā)明的程序產(chǎn)品不限于此,在本文件中,可讀存儲(chǔ)介質(zhì)可以是任何包含或存儲(chǔ)程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。

可讀信號(hào)介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號(hào),其中承載了可讀程序代碼。這種傳播的數(shù)據(jù)信號(hào)可以采用多種形式,包括——但不限于——電磁信號(hào)、光信號(hào)或上述的任意合適的組合??勺x信號(hào)介質(zhì)還可以是可讀存儲(chǔ)介質(zhì)以外的任何可讀介質(zhì),該可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。

可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括——但不限于——無線、有線、光纜、RF等等,或者上述的任意合適的組合。

可以以一種或多種程序設(shè)計(jì)語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的程序代碼,所述程序設(shè)計(jì)語言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語言—諸如Java、C++等,還包括常規(guī)的過程式程序設(shè)計(jì)語言—諸如“C”語言或類似的程序設(shè)計(jì)語言。程序代碼可以完全地在用戶計(jì)算設(shè)備上執(zhí)行、部分地在用戶設(shè)備上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算設(shè)備上部分在遠(yuǎn)程計(jì)算設(shè)備上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算設(shè)備或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算設(shè)備的情形中,遠(yuǎn)程計(jì)算設(shè)備可以通過任意種類的網(wǎng)絡(luò)——包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計(jì)算設(shè)備,或者,可以連接到外部計(jì)算設(shè)備(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。

應(yīng)當(dāng)注意,盡管在上文詳細(xì)描述中提及了裝置的若干單元或子單元,但是這種劃分僅僅是示例性的并非強(qiáng)制性的。實(shí)際上,根據(jù)本發(fā)明的實(shí)施方式,上文描述的兩個(gè)或更多單元的特征和功能可以在一個(gè)單元中具體化。反之,上文描述的一個(gè)單元的特征和功能可以進(jìn)一步劃分為由多個(gè)單元來具體化。

此外,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實(shí)現(xiàn)期望的結(jié)果。附加地或備選地,可以省略某些步驟,將多個(gè)步驟合并為一個(gè)步驟執(zhí)行,和/或?qū)⒁粋€(gè)步驟分解為多個(gè)步驟執(zhí)行。

雖然已經(jīng)參考若干具體實(shí)施方式描述了本發(fā)明的精神和原理,但是應(yīng)該理解,本發(fā)明并不限于所公開的具體實(shí)施方式,對(duì)各方面的劃分也不意味著這些方面中的特征不能組合以進(jìn)行受益,這種劃分僅是為了表述的方便。本發(fā)明旨在涵蓋所附權(quán)利要求的精神和范圍內(nèi)所包括的各種修改和等同布置。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1