專利名稱:一種會(huì)話實(shí)現(xiàn)的方法、設(shè)備及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及通信領(lǐng)域,尤其涉及一種會(huì)話實(shí)現(xiàn)的方法、設(shè)備及系統(tǒng)。
背景技術(shù):
Session(會(huì)話)表示W(wǎng)eb (網(wǎng)頁)服務(wù)器與用戶終端之間的一次會(huì)話過程(用戶終端通過瀏覽器與Web服務(wù)器進(jìn)行交互),該過程是連續(xù)的,也可以是時(shí)斷時(shí)續(xù)的。以用戶登錄郵箱查看郵件為例,Session指的是用戶通過用戶終端登錄郵箱后到離開郵箱前的過程。如果Web服務(wù)器提供的服務(wù)是面向登錄用戶,用戶在通過用戶終端登錄服務(wù)器時(shí)需要首先輸入賬戶信息,Web服務(wù)器驗(yàn)證通過后允許用戶登錄。驗(yàn)證通過時(shí),Web服務(wù)器產(chǎn)生一個(gè)Session ID,將該Session ID作為key (鍵)攜帶在cookie中寫入該用戶終端的瀏覽器。Web服務(wù)器存儲(chǔ)用戶的Session狀態(tài),包括Session ID與該用戶的賬戶信息的對(duì)應(yīng)關(guān)系。在一次Session中,Web服務(wù)器接收瀏覽器發(fā)送的業(yè)務(wù)請(qǐng)求報(bào)文,如果報(bào)文中攜帶cookie,且cookie中攜帶Session ID,服務(wù)器根據(jù)Session ID查找對(duì)應(yīng)的賬戶信息,如果查找成功,則判定用戶為登錄用戶,允許用戶的操作。如果報(bào)文中沒有攜帶cookie,或者cookie中沒有攜帶Session ID,或者根據(jù)Session ID沒有找到對(duì)應(yīng)的用戶信息,Web服務(wù)器判定用戶尚未登錄,拒絕相應(yīng)操作,要求用戶登錄。當(dāng)多臺(tái)Web服務(wù)器共同提供一項(xiàng)服務(wù)時(shí),例如,多臺(tái)Web服務(wù)器共同提供郵箱服務(wù),此時(shí),瀏覽器的Session狀態(tài)存儲(chǔ)在其第一次訪問的Web服務(wù)器內(nèi),為了使瀏覽器后續(xù)訪問其他Web服務(wù)器時(shí)不需要重復(fù)輸入賬戶信息,多臺(tái)Web服務(wù)器之間需要相互復(fù)制傳遞Session狀態(tài)。當(dāng)訪問量過大時(shí) ,需要大量Web服務(wù)器共同提供服務(wù),此時(shí)在大量Web服務(wù)器之間相互復(fù)制傳遞Session狀態(tài)將會(huì)影響Web服務(wù)器的工作效率。
發(fā)明內(nèi)容
本申請(qǐng)?zhí)峁┝艘环N會(huì)話實(shí)現(xiàn)的方法、設(shè)備及系統(tǒng),以提高Web服務(wù)器的工作效率。一種會(huì)話實(shí)現(xiàn)的方法,包括所述Web服務(wù)器接收所述瀏覽器發(fā)送的登錄請(qǐng)求,當(dāng)所述登錄請(qǐng)求中攜帶的賬戶信息正確時(shí),將所述賬戶信息發(fā)送至所述Session服務(wù)器,接收所述Session服務(wù)器發(fā)送的Session ID并將所述Session ID發(fā)送至所述瀏覽器,由所述Session服務(wù)器存儲(chǔ)賬戶信息與Session ID的對(duì)應(yīng)關(guān)系;所述Web服務(wù)器接收所述瀏覽器發(fā)送的業(yè)務(wù)請(qǐng)求,當(dāng)所述業(yè)務(wù)請(qǐng)求內(nèi)攜帶Session ID時(shí),所述Web服務(wù)器向所述Session服務(wù)器發(fā)送賬戶信息獲取請(qǐng)求,使所述Session服務(wù)器根據(jù)所述賬戶信息獲取請(qǐng)求內(nèi)攜帶的所述Session ID查找對(duì)應(yīng)的賬戶信息,如果查找到對(duì)應(yīng)的賬戶信息,所述Web服務(wù)器允許所述業(yè)務(wù)請(qǐng)求,否則,所述Web服務(wù)器拒絕所述業(yè)務(wù)請(qǐng)求。一種網(wǎng)頁Web服務(wù)器,包括第一收發(fā)單元,登錄處理單元,第二收發(fā)單元,業(yè)務(wù)處理單元,其中所述第一收發(fā)單元,用于接收用戶終端發(fā)送的攜帶賬戶信息的登錄請(qǐng)求以及業(yè)務(wù)請(qǐng)求;以及,將Session服務(wù)器返回的Session ID發(fā)送給所述用戶終端;所述登錄處理單元,用于當(dāng)所述第一收發(fā)單元接收到的登錄請(qǐng)求中攜帶的賬戶信息驗(yàn)證通過時(shí),指示所述第二收發(fā)單元向所述Session服務(wù)器發(fā)送攜帶有所述賬戶信息的Session ID獲取請(qǐng)求;所述第二收發(fā)單元,用于根據(jù)所述登錄處理單元的指示向所述Session服務(wù)器發(fā)送Session ID獲取請(qǐng)求,并接收所述Session服務(wù)器返回的Session ID;以及,根據(jù)所述業(yè)務(wù)處理單元的指示向所述Session服務(wù)器發(fā)送賬戶信息確認(rèn)請(qǐng)求,并接收所述Session服務(wù)器的響應(yīng);其中,所述Session服務(wù)器根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,如果查找到對(duì)應(yīng)的賬戶信息,則向所述Web服務(wù)器發(fā)送確認(rèn)信息;所述業(yè)務(wù)處理單元,用于當(dāng)判斷所述第一收發(fā)單元接收到的業(yè)務(wù)請(qǐng)求內(nèi)攜帶Session ID時(shí),指示所述第二收發(fā)單元向所述Session服務(wù)器發(fā)送攜帶有所述Session ID的賬戶信息確認(rèn)請(qǐng)求;以及,當(dāng)判斷所述第二收發(fā)單元接收到的所述Session服務(wù)器的響應(yīng)為確認(rèn)信息時(shí),執(zhí)行所述業(yè)務(wù)請(qǐng)求。一種Session服務(wù)器,包括收發(fā)單元,第一處理單元,存儲(chǔ)單元,第二處理單元,其中所述收發(fā)單元,用于接收Web服務(wù)器根據(jù)用戶終端的登錄請(qǐng)求發(fā)送的攜帶有賬戶信息的Session ID獲取請(qǐng)求,并向所述Web服務(wù)器返回Session ID ;以及,接收Web服務(wù)器在接收到已登錄用戶終端發(fā)送的業(yè)務(wù)請(qǐng)求后所發(fā)送的攜帶Session ID的賬戶信息確認(rèn)請(qǐng)求,并對(duì)所述賬戶信息確認(rèn)請(qǐng)求進(jìn)行響應(yīng);所述第一處理單 元,用于根據(jù)所述收發(fā)單元接收到的Session ID獲取請(qǐng)求,生成與所述賬戶信息對(duì)應(yīng)的Session ID,指示所述收發(fā)單元向所述Web服務(wù)器發(fā)送所述Session ID,并將Session ID與賬戶信息的對(duì)應(yīng)關(guān)系存儲(chǔ)到所述存儲(chǔ)單元;所述存儲(chǔ)單元,用于存儲(chǔ)Session ID與賬戶信息的對(duì)應(yīng)關(guān)系;所述第二處理單元,用于根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,并當(dāng)查找到對(duì)應(yīng)的賬戶信息時(shí),指示所述收發(fā)單元向所述Web服務(wù)器發(fā)送確認(rèn)信息進(jìn)行響應(yīng)?!N會(huì)話實(shí)現(xiàn)的系統(tǒng),包括Web服務(wù)器和Session服務(wù)器;所述Web服務(wù)器,用于接收所述用戶終端發(fā)送的攜帶賬戶信息的登錄請(qǐng)求以及業(yè)務(wù)請(qǐng)求;當(dāng)所述登錄請(qǐng)求中攜帶的賬戶信息驗(yàn)證通過時(shí),向所述Session服務(wù)器發(fā)送攜帶有所述賬戶信息的Session ID獲取請(qǐng)求,接收所述Session服務(wù)器返回的Session ID并將所述Session ID發(fā)送至所述用戶終端,由所述Session服務(wù)器存儲(chǔ)賬戶信息與SessionID的對(duì)應(yīng)關(guān)系;當(dāng)所述業(yè)務(wù)請(qǐng)求內(nèi)攜帶Session ID時(shí),向所述Session服務(wù)器發(fā)送攜帶有所述的Session ID的賬戶信息確認(rèn)請(qǐng)求,并在接收到確認(rèn)信息后,執(zhí)行所述業(yè)務(wù)請(qǐng)求;所述Session服務(wù)器,用于接收所述Web服務(wù)器發(fā)送的攜帶賬戶信息的SessionID獲取請(qǐng)求,生成并向所述Web服務(wù)器發(fā)送Session ID,存儲(chǔ)所述Session ID與賬戶信息的對(duì)應(yīng)關(guān)系;接收所述Web服務(wù)器發(fā)送的攜帶SessionID的賬戶信息確認(rèn)請(qǐng)求,根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,并當(dāng)查找到對(duì)應(yīng)的賬戶信息時(shí),向所述Web服務(wù)器發(fā)送確認(rèn)信息。與現(xiàn)有技術(shù)相比,本申請(qǐng)實(shí)施例至少具有以下優(yōu)點(diǎn)Web服務(wù)器不需要存儲(chǔ)賬戶信息與Session ID的對(duì)應(yīng)關(guān)系,而是由Session服務(wù)器存儲(chǔ)該對(duì)應(yīng)關(guān)系并處理Session ID的生成以及賬戶信息的查找,使得Web服務(wù)器之間不需要復(fù)制傳遞Session狀態(tài),提高了 Web服務(wù)器的工作效率。
圖1是本申請(qǐng)實(shí)施例提供的會(huì)話實(shí)現(xiàn)的方法應(yīng)用于郵箱服務(wù)場(chǎng)景的流程示意圖;圖2是本申請(qǐng)實(shí)施例提供的會(huì)話實(shí)現(xiàn)的方法應(yīng)用于在線購物場(chǎng)景的流程示意圖;圖3是本申請(qǐng)實(shí)施例提供的Web服務(wù)器的結(jié)構(gòu)示意圖;圖4是本申請(qǐng)實(shí)施例提供的Session服務(wù)器的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明的實(shí)施例中的附圖,對(duì)本發(fā)明的實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,下面所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明的實(shí)施例保護(hù)的范圍。本申請(qǐng)實(shí)施例提供一種會(huì)話實(shí)現(xiàn)的方法,應(yīng)用于包括用戶終端、多個(gè)Web服務(wù)器、以及session服務(wù)器的系統(tǒng)中,該多個(gè)Web服務(wù)器共同提供網(wǎng)絡(luò)服務(wù),例如,多個(gè)Web服務(wù)器共同向用戶提供郵箱服 務(wù),該郵箱形式為“XXX@888. com”,用戶向Web服務(wù)器請(qǐng)求注冊(cè)888郵箱,然后通過888郵箱進(jìn)行郵件收發(fā)。本實(shí)例中,Web服務(wù)器不再承擔(dān)生成Session ID以及存儲(chǔ)Session狀態(tài)的功能,而是由Session服務(wù)器生成Session ID以及存儲(chǔ)Session狀態(tài)。為了便于描述,在本申請(qǐng)實(shí)施例中以用戶終端通過瀏覽器與Web服務(wù)器交互,Session狀態(tài)為Session ID與賬戶信息的對(duì)應(yīng)關(guān)系為例進(jìn)行說明。在Web服務(wù)器驗(yàn)證用戶的賬戶信息正確后,Web服務(wù)器向Session服務(wù)器發(fā)送Session ID獲取請(qǐng)求,由Session服務(wù)器根據(jù)該Session ID獲取請(qǐng)求中攜帶的賬戶信息生成與該賬戶信息對(duì)應(yīng)的Session ID并存儲(chǔ)該賬戶信息與Session ID的對(duì)應(yīng)關(guān)系,Web服務(wù)器將Session服務(wù)器生成的Session ID攜帶在cookie中寫入瀏覽器。在后續(xù)接收到瀏覽器的業(yè)務(wù)請(qǐng)求后,Web服務(wù)器獲取瀏覽器發(fā)送的報(bào)文中的cookie,從中獲取SessionID,然后向Session服務(wù)器發(fā)送查找與Session ID對(duì)應(yīng)的賬戶信息的賬戶信息確認(rèn)請(qǐng)求,Session服務(wù)器接收該賬戶信息確認(rèn)請(qǐng)求,如果查找得到與Session ID對(duì)應(yīng)的用戶信息,則判定對(duì)應(yīng)帳戶的用戶在Web服務(wù)器上的狀態(tài)為登錄狀態(tài),向Web服務(wù)器發(fā)送確認(rèn)信息,使Web服務(wù)器根據(jù)該確認(rèn)信息執(zhí)行相應(yīng)業(yè)務(wù)請(qǐng)求,否則判定用戶未登錄,拒絕相應(yīng)業(yè)務(wù)請(qǐng)求。其中,該業(yè)務(wù)請(qǐng)求可以包括頁面刷新請(qǐng)求(即刷新瀏覽器當(dāng)前瀏覽的頁面),頁面關(guān)閉請(qǐng)求(即關(guān)閉瀏覽器當(dāng)前瀏覽的頁面),或在線購買請(qǐng)求等。其中,當(dāng)系統(tǒng)中存在多個(gè)Session服務(wù)器時(shí),Web服務(wù)器中則需要存儲(chǔ)Session ID與Session服務(wù)器的對(duì)應(yīng)關(guān)系。當(dāng)接收到用戶終端發(fā)送的攜帶有Session ID的業(yè)務(wù)請(qǐng)求時(shí),Web服務(wù)器向該Session ID對(duì)應(yīng)的Session服務(wù)器發(fā)送賬戶信息確認(rèn)請(qǐng)求。
以下以888郵箱為例,對(duì)本實(shí)施例提供的會(huì)話實(shí)現(xiàn)的方法進(jìn)行介紹。假定提供888郵箱服務(wù)的Web服務(wù)器包括第一服務(wù)器和第二服務(wù)器,如圖1所示,該方法包括以下步驟步驟101,用戶通過瀏覽器訪問888郵箱登錄界面,輸入賬戶信息,并向第一服務(wù)器發(fā)送攜帶賬戶信息的登錄請(qǐng)求;步驟102,第一服務(wù)器接收該登錄請(qǐng)求,驗(yàn)證賬戶信息是否正確,如果驗(yàn)證結(jié)果為正確,執(zhí)行步驟103 ;否則拒絕用戶登錄。步驟103,第一服務(wù)器向Session服務(wù)器發(fā)送對(duì)應(yīng)賬戶信息的Session ID獲取請(qǐng)求,由Session服務(wù)器根據(jù)該請(qǐng)求生成Session ID并記錄Session ID與賬戶信息的對(duì)應(yīng)關(guān)系,Session服務(wù)器向第一服務(wù)器發(fā)送該Session ID。步驟104,第一服務(wù)器將Session ID攜帶在cookie中寫入瀏覽器。步驟105,瀏覽器向第二服務(wù)器發(fā)送頁面刷新請(qǐng)求,第二服務(wù)器接收到該請(qǐng)求,查找請(qǐng)求中是否攜帶cookie ;如果查找結(jié)果為是,執(zhí)行步驟106 ;否則,拒絕執(zhí)行頁面刷新處理。步驟106,第二服務(wù)器獲取cookie中攜帶的Session ID,根據(jù)該Session ID向Session服務(wù)器發(fā)送賬戶信息確認(rèn)請(qǐng)求。步驟107, Session服務(wù)器查找存儲(chǔ)的與賬戶信息確認(rèn)請(qǐng)求中攜帶的Session ID對(duì)應(yīng)的賬戶信息,如果查找到 該賬戶信息,執(zhí)行步驟108 ;如果未查找到該賬戶信息,執(zhí)行步驟109。步驟108,第二服務(wù)器接收賬戶信息查找成功的通知,判定用戶為登錄狀態(tài),執(zhí)行頁面刷新操作。其中,賬戶信息查找成功的通知可以為一個(gè)預(yù)設(shè)的表示Session服務(wù)器查找得到對(duì)應(yīng)賬戶信息的通知,或者攜帶查找得到的賬戶信息的通知。步驟109,第二服務(wù)器接收查找失敗通知,判定用戶為非登錄狀態(tài),拒絕執(zhí)行頁面刷新操作。本實(shí)例提供的方法可以應(yīng)用于多種場(chǎng)景,為了使本申請(qǐng)方案更加清楚,下面結(jié)合在線購物場(chǎng)景對(duì)本實(shí)例提供的方法進(jìn)行介紹。在線購物服務(wù)網(wǎng)站提供的服務(wù)包括在線搜索服務(wù)和在線購買服務(wù),由多臺(tái)Web服務(wù)器共同提供服務(wù)。其中,在線搜索服務(wù)不需要用戶登錄,在線購買服務(wù)要求用戶登錄。用戶初始時(shí)在線搜索商品,假定用戶搜索到合適的商品后要求使用在線購買服務(wù),則此時(shí)Web服務(wù)器A接收到用戶通過瀏覽器發(fā)送的在線購買請(qǐng)求后,處理過程如圖2所示,包括步驟201,Web服務(wù)器A判斷在線購買請(qǐng)求中是否攜帶cookie ;如果判斷結(jié)果為是,執(zhí)行步驟202 ;否則要求用戶登錄。步驟202, Web服務(wù)器A獲取cookie中的Session ID,向Session服務(wù)器發(fā)送賬戶信息查詢請(qǐng)求。步驟203, Session服務(wù)器查找與賬戶信息查詢請(qǐng)求中攜帶的Session ID對(duì)應(yīng)的賬戶信息,如果查找成功,執(zhí)行步驟204 ;否則,Web服務(wù)器A要求用戶登錄。步驟204,Web服務(wù)器A允許用戶使用在線購買服務(wù)。本申請(qǐng)實(shí)施例提供的方法中,可選的,Session服務(wù)器以分布式緩存的方式存儲(chǔ)Session狀態(tài)。具體的,Session服務(wù)器生成與用戶的賬戶信息對(duì)應(yīng)的Session ID,并可將該Session ID作為鍵(key),使用一致性哈希算法找到與Session ID對(duì)應(yīng)的分布式緩存,將Session狀態(tài)存儲(chǔ)到對(duì)應(yīng)的分布式緩存。即使用一致性哈希算法,確定Session ID (key)對(duì)應(yīng)的分布式緩存(value)。具體地,當(dāng)接收到Web服務(wù)器的賬戶信息查詢請(qǐng)求時(shí),Session服務(wù)器獲取賬戶信息查詢請(qǐng)求中攜帶的Session ID,使用一致性哈希算法找到與SessionID對(duì)應(yīng)的分布式緩存,在該分布式緩存內(nèi)查找與賬戶信息查詢請(qǐng)求內(nèi)攜帶的Session ID對(duì)應(yīng)的賬戶信息。Session服務(wù)器使用一致性哈希算法確定與SessionID對(duì)應(yīng)的分布式緩存時(shí),可根據(jù)各分布式緩存的負(fù)載情況,確定Session ID的存儲(chǔ),以使各緩存能夠?qū)崿F(xiàn)均衡負(fù)載?;谂c上述方法實(shí)施例相同的技術(shù)構(gòu)思,本申請(qǐng)還提供下述裝置實(shí)施例。本申請(qǐng)實(shí)施例提供一種Web服務(wù)器,應(yīng)用于包括Session服務(wù)器的系統(tǒng)中,如圖3所示,該Web服務(wù)器包括第一收發(fā)單元11,登錄處理單元12,第二收發(fā)單元13,業(yè)務(wù)處理單元14,其中第一收發(fā)單元11,用于接收用戶終端發(fā)送的攜帶賬戶信息的登錄請(qǐng)求以及業(yè)務(wù)請(qǐng)求;以及,將Session服務(wù)器返回的Session ID發(fā)送給所述用戶終端;登錄處理單元12,用于當(dāng)?shù)谝皇瞻l(fā)單元11接收到的登錄請(qǐng)求中攜帶的賬戶信息驗(yàn)證通過時(shí),指示第二收發(fā)單元13向所述Session服務(wù)器發(fā)送攜帶有所述賬戶信息的Session ID獲取請(qǐng)求;第二收發(fā)單元13,用于根據(jù)登錄處理單元12的指示向所述Session服務(wù)器發(fā)送Session ID獲取請(qǐng)求,并接收所述Session服務(wù)器返回的Session ID;以及,根據(jù)業(yè)務(wù)處理單元14的指示向所述Session服務(wù)器發(fā)送賬戶信息確認(rèn)請(qǐng)求,并接收所述Session服務(wù)器的響應(yīng);其中,所述Session服務(wù)器根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,如果查找到對(duì)應(yīng)的賬戶信息,則向所述Web服務(wù)器發(fā)送確認(rèn)信息;業(yè)務(wù)處理單元14 ,用于當(dāng)判斷第一收發(fā)單元11接收到的業(yè)務(wù)請(qǐng)求內(nèi)攜帶SessionID時(shí),指示第二收發(fā)單元13向所述Session服務(wù)器發(fā)送攜帶有所述Session ID的賬戶信息確認(rèn)請(qǐng)求;以及,當(dāng)判斷第二收發(fā)單元13接收到的所述Session服務(wù)器的響應(yīng)為確認(rèn)信息時(shí),執(zhí)行所述業(yè)務(wù)請(qǐng)求。其中,業(yè)務(wù)處理單元14還可以用于,查找所述業(yè)務(wù)請(qǐng)求內(nèi)攜帶的cookie,在查找失敗時(shí)拒絕所述業(yè)務(wù)請(qǐng)求,在查找成功時(shí)判斷所述cookie內(nèi)是否攜帶Session ID,如果所述cookie內(nèi)沒有攜帶Session ID,拒絕所述業(yè)務(wù)請(qǐng)求。本申請(qǐng)實(shí)施例提供一種Session服務(wù)器,應(yīng)用于包括Web服務(wù)器的系統(tǒng)中,如圖4所示,該服務(wù)器包括收發(fā)單元21,第一處理單元22,存儲(chǔ)單元23,第二處理單元24,其中收發(fā)單元21,用于接收Web服務(wù)器根據(jù)用戶終端的登錄請(qǐng)求發(fā)送的攜帶有賬戶信息的Session ID獲取請(qǐng)求,并向所述Web服務(wù)器返回Session ID ;以及,接收Web服務(wù)器在接收到已登錄用戶終端發(fā)送的業(yè)務(wù)請(qǐng)求后所發(fā)送的攜帶Session ID的賬戶信息確認(rèn)請(qǐng)求,并對(duì)所述賬戶信息確認(rèn)請(qǐng)求進(jìn)行響應(yīng);第一處理單元22,用于根據(jù)收發(fā)單元21接收到的Session ID獲取請(qǐng)求,生成與所述賬戶信息對(duì)應(yīng)的Session ID,指示收發(fā)單元21向所述Web服務(wù)器發(fā)送所述Session ID,并將Session ID與賬戶信息的對(duì)應(yīng)關(guān)系存儲(chǔ)到存儲(chǔ)單元23 ;存儲(chǔ)單元23,用于存儲(chǔ)Session ID與賬戶信息的對(duì)應(yīng)關(guān)系;
第二處理單元24,用于根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,并當(dāng)查找到對(duì)應(yīng)的賬戶信息時(shí),指示收發(fā)單元21向所述Web服務(wù)器發(fā)送確認(rèn)信息進(jìn)行響應(yīng)。其中,存儲(chǔ)單元23可以具體為多個(gè)分布式緩存單元。相應(yīng)地,第一處理單元22可以具體用于根據(jù)一致性哈希算法確定與Session ID對(duì)應(yīng)的分布式緩存單元,并將所述賬戶信息與Session ID的對(duì)應(yīng)關(guān)系存儲(chǔ)到確定出的分布式緩存單元中;第二處理單元24可以具體用于根據(jù)一致性哈希算法確定與Session ID對(duì)應(yīng)的分布式緩存單元,在確定的分布式緩存單元內(nèi)查找與Session ID對(duì)應(yīng)的賬戶信息。本申請(qǐng)實(shí)施例提供一種會(huì)話實(shí)現(xiàn)的系統(tǒng),包括Web服務(wù)器和Session服務(wù)器;所述Web服務(wù)器,用于接收所述用戶終端發(fā)送的攜帶賬戶信息的登錄請(qǐng)求以及業(yè)務(wù)請(qǐng)求;當(dāng)所述登錄請(qǐng)求中攜帶的賬戶信息驗(yàn)證通過時(shí),向所述Session服務(wù)器發(fā)送攜帶有所述賬戶信息的Session ID獲取請(qǐng)求,接收所述Session服務(wù)器返回的Session ID并將所述Session ID發(fā)送至所述用戶終端,由所述Session服務(wù)器存儲(chǔ)賬戶信息與SessionID的對(duì)應(yīng)關(guān)系;當(dāng)所述業(yè)務(wù)請(qǐng)求內(nèi)攜帶Session ID時(shí),向所述Session服務(wù)器發(fā)送攜帶有所述的Session ID的賬戶信息確認(rèn)請(qǐng)求,并在接收到確認(rèn)信息后,執(zhí)行所述業(yè)務(wù)請(qǐng)求;所述Sessi on服務(wù)器,用于接收所述Web服務(wù)器發(fā)送的攜帶賬戶信息的SessionID獲取請(qǐng)求,生成并向所述Web服務(wù)器發(fā)送Session ID,存儲(chǔ)所述Session ID與賬戶信息的對(duì)應(yīng)關(guān)系;接收所述Web服務(wù)器發(fā)送的攜帶SessionID的賬戶信息確認(rèn)請(qǐng)求,根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,并當(dāng)查找到對(duì)應(yīng)的賬戶信息時(shí),向所述Web服務(wù)器發(fā)送確認(rèn)信息。通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的模塊或流程并不一定是實(shí)施本發(fā)明所必須的。本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的模塊可以按照實(shí)施例描述進(jìn)行分布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的一個(gè)或多個(gè)裝置中。上述實(shí)施例的模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。 上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。 以上公開的僅為本發(fā)明的幾個(gè)具體實(shí)施例,但是,本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種會(huì)話實(shí)現(xiàn)的方法,其特征在于,包括 Web服務(wù)器接收用戶終端發(fā)送的攜帯有賬戶信息的登錄請(qǐng)求,并當(dāng)所述賬戶信息驗(yàn)證通過后,向Session服務(wù)器發(fā)送攜帶有所述賬戶信息的Session ID獲取請(qǐng)求; 所述Session服務(wù)器根據(jù)所述Session ID獲取請(qǐng)求,生成與所述賬戶信息對(duì)應(yīng)的Session ID,存儲(chǔ)所述賬戶信息與所生成的Session ID的對(duì)應(yīng)關(guān)系,并將所述Session ID發(fā)送給所述Web服務(wù)器; 所述Web服務(wù)器將獲取到的Session ID發(fā)送至所述用戶終端; 當(dāng)所述Web服務(wù)器接收到所述用戶終端發(fā)送的攜帯有Session ID的業(yè)務(wù)請(qǐng)求后,向所述Session服務(wù)器發(fā)送攜帶有所述Session ID的賬戶信息確認(rèn)請(qǐng)求,并在接收到確認(rèn)信息后,執(zhí)行所述業(yè)務(wù)請(qǐng)求; 其中,所述Session服務(wù)器根據(jù)所述賬戶信息確認(rèn)請(qǐng)求中攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,如果查找到對(duì)應(yīng)的賬戶信息,則向所述Web服務(wù)器發(fā)送確認(rèn)信息。
2.如權(quán)利要求1所述的方法,其特征在于,所述Session服務(wù)器包括多個(gè)分布式緩存; 所述Session服務(wù)器存儲(chǔ)賬戶信息與Session ID的對(duì)應(yīng)關(guān)系包括所述Session服務(wù)器根據(jù)一致性哈希算法確定與Session ID對(duì)應(yīng)的分布式緩存,在確定出的分布式緩存中存儲(chǔ)所述賬戶信息與Session ID的對(duì)應(yīng)關(guān)系; 所述Session服務(wù)器根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的所述Session ID查找對(duì)應(yīng)的賬戶信息包括所述Session服務(wù)器根據(jù)一致性哈希算法確定與所述Session ID對(duì)應(yīng)的分布式緩存,在確定出的分布式緩存內(nèi)查找對(duì)應(yīng)的賬戶信息。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述Web服務(wù)器接收所述用戶終端發(fā)送的業(yè)務(wù)請(qǐng)求之后,還包括 所述Web服務(wù)器查找所述業(yè)務(wù)請(qǐng)求內(nèi)攜帶的cookie,在查找失敗時(shí)拒絕所述業(yè)務(wù)請(qǐng)求,在查找成功時(shí)判斷所述cookie內(nèi)是否攜帶Session ID,如果所述cookie內(nèi)沒有攜帶Session ID,拒絕所述業(yè)務(wù)請(qǐng)求。
4.ー種Web服務(wù)器,其特征在干,該Web服務(wù)器包括第一收發(fā)單元,登錄處理単元,第二收發(fā)單元,業(yè)務(wù)處理單元,其中 所述第一收發(fā)單元,用于接收用戶終端發(fā)送的攜帯賬戶信息的登錄請(qǐng)求以及業(yè)務(wù)請(qǐng)求;以及,將Session服務(wù)器返回的Session ID發(fā)送給所述用戶終端; 所述登錄處理單元,用于當(dāng)所述第一收發(fā)單元接收到的登錄請(qǐng)求中攜帯的賬戶信息驗(yàn)證通過時(shí),指示所述第二收發(fā)單元向所述Session服務(wù)器發(fā)送攜帯有所述賬戶信息的Session ID獲取請(qǐng)求; 所述第二收發(fā)單元,用于根據(jù)所述登錄處理單元的指示向所述Session服務(wù)器發(fā)送Session ID獲取請(qǐng)求,并接收所述Session服務(wù)器返回的Session ID;以及,根據(jù)所述業(yè)務(wù)處理單元的指示向所述Session服務(wù)器發(fā)送賬戶信息確認(rèn)請(qǐng)求,并接收所述Session服務(wù)器的響應(yīng);其中,所述Session服務(wù)器根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帶的Session ID查找對(duì)應(yīng)的賬戶信息,如果查找到對(duì)應(yīng)的賬戶信息,則向所述Web服務(wù)器發(fā)送確認(rèn)信息; 所述業(yè)務(wù)處理單元,用于當(dāng)判斷所述第一收發(fā)單元接收到的業(yè)務(wù)請(qǐng)求內(nèi)攜帶SessionID時(shí),指示所述第二收發(fā)單元向所述Session服務(wù)器發(fā)送攜帶有所述Session ID的賬戶信息確認(rèn)請(qǐng)求;以及,當(dāng)判斷所述第二收發(fā)單元接收到的所述Session服務(wù)器的響應(yīng)為確認(rèn)信息時(shí),執(zhí)行所述業(yè)務(wù)請(qǐng)求。
5.如權(quán)利要求4所述的服務(wù)器,其特征在于,所述業(yè)務(wù)處理單元還用于 查找所述業(yè)務(wù)請(qǐng)求內(nèi)攜帶的cookie,在查找失敗時(shí)拒絕所述業(yè)務(wù)請(qǐng)求,在查找成功時(shí)判斷所述cookie內(nèi)是否攜帶Session ID,如果所述cookie內(nèi)沒有攜帶Session ID,拒絕所述業(yè)務(wù)請(qǐng)求。
6.ー種Session服務(wù)器,其特征在于,包括收發(fā)單元,第一處理單元,存儲(chǔ)單元,第二處理單元,其中 所述收發(fā)単元,用于接收Web服務(wù)器根據(jù)用戶終端的登錄請(qǐng)求發(fā)送的攜帯有賬戶信息的Session ID獲取請(qǐng)求,并向所述Web服務(wù)器返回Session ID ;以及,接收Web服務(wù)器在接收到已登錄用戶終端發(fā)送的業(yè)務(wù)請(qǐng)求后所發(fā)送的攜帯Session ID的賬戶信息確認(rèn)請(qǐng)求,并對(duì)所述賬戶信息確認(rèn)請(qǐng)求進(jìn)行響應(yīng); 所述第一處理單元,用于根據(jù)所述收發(fā)單元接收到的Session ID獲取請(qǐng)求,生成與所述賬戶信息對(duì)應(yīng)的Session ID,指示所述收發(fā)単元向所述Web服務(wù)器發(fā)送所述SessionID,并將Session ID與賬戶信息的對(duì)應(yīng)關(guān)系存儲(chǔ)到所述存儲(chǔ)単元; 所述存儲(chǔ)単元,用于存儲(chǔ)Session ID與賬戶信息的對(duì)應(yīng)關(guān)系; 所述第二處理單元,用于根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帯的Session ID查找對(duì)應(yīng)的賬戶信息,并當(dāng)查找到對(duì)應(yīng)的賬戶信息時(shí),指示所述收發(fā)単元向所述Web服務(wù)器發(fā)送確認(rèn)信息進(jìn)行響應(yīng)。
7.如權(quán)利要求6所述的服務(wù)器,其特征在干,所述存儲(chǔ)単元具體為多個(gè)分布式緩存單元, 所述第一處理單元具體用于根據(jù)一致性哈希算法確定與Session ID對(duì)應(yīng)的分布式緩存單元,并將所述賬戶信息與Session ID的對(duì)應(yīng)關(guān)系存儲(chǔ)到確定出的分布式緩存單元中; 所述第二處理單元具體用于根據(jù)一致性哈希算法確定與Session ID對(duì)應(yīng)的分布式緩存單元,在確定的分布式緩存單元內(nèi)查找與Session ID對(duì)應(yīng)的賬戶信息。
8.ー種會(huì)話實(shí)現(xiàn)的系統(tǒng),其特征在于,包括Web服務(wù)器和Session服務(wù)器; 所述Web服務(wù)器,用于接收所述用戶終端發(fā)送的攜帯賬戶信息的登錄請(qǐng)求以及業(yè)務(wù)請(qǐng)求;當(dāng)所述登錄請(qǐng)求中攜帶的賬戶信息驗(yàn)證通過時(shí),向所述Session服務(wù)器發(fā)送攜帶有所述賬戶信息的Session ID獲取請(qǐng)求,接收所述Session服務(wù)器返回的Session ID并將所述Session ID發(fā)送至所述用戶終端,由所述Session服務(wù)器存儲(chǔ)賬戶信息與Session ID的對(duì)應(yīng)關(guān)系;當(dāng)所述業(yè)務(wù)請(qǐng)求內(nèi)攜帶Session ID時(shí),向所述Session服務(wù)器發(fā)送攜帶有所述的Session ID的賬戶信息確認(rèn)請(qǐng)求,并在接收到確認(rèn)信息后,執(zhí)行所述業(yè)務(wù)請(qǐng)求; 所述Session服務(wù)器,用于接收所述Web服務(wù)器發(fā)送的攜帯賬戶信息的Session ID獲取請(qǐng)求,生成并向所述Web服務(wù)器發(fā)送Session ID,存儲(chǔ)所述Session ID與賬戶信息的對(duì)應(yīng)關(guān)系;接收所述Web服務(wù)器發(fā)送的攜帯SessionID的賬戶信息確認(rèn)請(qǐng)求,根據(jù)所述賬戶信息確認(rèn)請(qǐng)求內(nèi)攜帯的Session ID查找對(duì)應(yīng)的賬戶信息,并當(dāng)查找到對(duì)應(yīng)的賬戶信息吋,向所述Web服務(wù)器發(fā)送確認(rèn)信息。
全文摘要
本申請(qǐng)公開了一種會(huì)話實(shí)現(xiàn)的方法、設(shè)備及系統(tǒng)。該方法包括Web服務(wù)器接收用戶終端發(fā)送的攜帶有賬戶信息的登錄請(qǐng)求,當(dāng)所述賬戶信息驗(yàn)證通過后,向Session服務(wù)器發(fā)送攜帶有所述賬戶信息的Session ID獲取請(qǐng)求,接收Session服務(wù)器發(fā)送的Session ID并將所述Session ID發(fā)送至瀏覽器,由Session服務(wù)器存儲(chǔ)賬戶信息與Session ID的對(duì)應(yīng)關(guān)系;當(dāng)接收到攜帶Session ID的業(yè)務(wù)請(qǐng)求時(shí),Web服務(wù)器向Session服務(wù)器發(fā)送賬戶信息確認(rèn)請(qǐng)求,由Session服務(wù)器根據(jù)所述Session ID查找對(duì)應(yīng)的賬戶信息,根據(jù)查找結(jié)果判斷是否允許所述業(yè)務(wù)請(qǐng)求。通過Session服務(wù)器存儲(chǔ)Session狀態(tài),提高了Web服務(wù)器的工作效率。
文檔編號(hào)H04L29/06GK103051647SQ20111030931
公開日2013年4月17日 申請(qǐng)日期2011年10月13日 優(yōu)先權(quán)日2011年10月13日
發(fā)明者段曉輝 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司