負(fù)載分配方法和設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及虛擬網(wǎng)絡(luò)服務(wù)領(lǐng)域,具體涉及一種負(fù)載分配方法和設(shè)備。
【背景技術(shù)】
[0002]現(xiàn)有的虛擬網(wǎng)絡(luò)服務(wù)中,將所有負(fù)載分配給不同的操作單元。也就是說,將對負(fù)載的服務(wù)分?jǐn)偟蕉鄠€(gè)操作單元上進(jìn)行執(zhí)行,例如Web服務(wù)器、FTP服務(wù)器、企業(yè)關(guān)鍵應(yīng)用服務(wù)器和其它關(guān)鍵任務(wù)服務(wù)器等,從而由多個(gè)操作單元共同完成工作任務(wù)。這擴(kuò)展了服務(wù)器集群的帶寬、增加了其吞吐量、加強(qiáng)了網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高了網(wǎng)絡(luò)的靈活性和可用性。
[0003]在現(xiàn)有技術(shù)中,將多個(gè)負(fù)載分配給不同操作單元的過程中,可能將某客戶端的、屬于同一會話的請求分配給不同的服務(wù)器,由此可能導(dǎo)致會話中斷。
【發(fā)明內(nèi)容】
[0004]鑒于上述問題,提出了本發(fā)明以便提供一種至少部分地解決上述問題的負(fù)載分配方法和設(shè)備。
[0005]依據(jù)本發(fā)明的一個(gè)方面,提供了一種負(fù)載分配方法,包括:
[0006]接收來自客戶端的會話請求;
[0007]根據(jù)所述會話請求,獲取所述客戶端的特定標(biāo)識符;以及
[0008]基于所述特定標(biāo)識符將所述客戶端分配給所有可用服務(wù)器中的特定服務(wù)器。
[0009]依據(jù)本發(fā)明的另一方面,還提供了一種負(fù)載分配設(shè)備,包括:
[0010]第一接收模塊,用于接收來自客戶端的會話請求;
[0011]獲取模塊,用于根據(jù)所述會話請求,獲取所述客戶端的特定標(biāo)識符;以及
[0012]分配模塊,用于基于所述特定標(biāo)識符將所述客戶端分配給所有可用服務(wù)器中的特定服務(wù)器。
[0013]本發(fā)明的上述負(fù)載分配方法和設(shè)備利用客戶端的特定標(biāo)識符建立客戶端與特定服務(wù)器之間的一一映射關(guān)系,從而能夠在將多個(gè)客戶端分配給不同操作單元的過程中,保證將特定客戶端的、屬于同一會話的請求分配給同一服務(wù)器,由此保持會話。
[0014]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的【具體實(shí)施方式】。
【附圖說明】
[0015]通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0016]圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的負(fù)載分配方法的示意性流程圖;
[0017]圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的基于特定標(biāo)識符將客戶端分配給特定服務(wù)器的過程的示意性流程圖;以及
[0018]圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的負(fù)載分配設(shè)備的示意性框圖。
【具體實(shí)施方式】
[0019]下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0020]現(xiàn)有技術(shù)中,在進(jìn)行負(fù)載分配時(shí),可能將某負(fù)載的同一會話的不同請求分配給不同的服務(wù)器,由此導(dǎo)致會話中斷。在本文的描述中,負(fù)載可以是客戶端。例如,在某客戶端上,用戶輸入了登錄的用戶名和密碼,以登錄相關(guān)網(wǎng)站進(jìn)行購物。該登錄操作所對應(yīng)的登錄請求可能被分配給了服務(wù)器A。由此服務(wù)器A通過該登錄請求保存了該會話。當(dāng)用戶接下來在該相關(guān)網(wǎng)站進(jìn)行購物時(shí),該購物操作所對應(yīng)的請求可能被分配給了服務(wù)器B,而服務(wù)器B并沒有該會話的任何信息。對于服務(wù)器A,其雖然保存了該會話,但很可能因?yàn)樵谝粋€(gè)預(yù)定義的時(shí)限內(nèi)未從客戶端接收任何請求,導(dǎo)致會話中斷。
[0021]為了在進(jìn)行負(fù)載分配時(shí)始終保持會話,根據(jù)本發(fā)明的一個(gè)方面,提供一種負(fù)載分配方法。圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的負(fù)載分配方法100的示意性流程圖。如圖1所示,負(fù)載分配方法100包括步驟S110、步驟S130和步驟S150。
[0022]在步驟SllO中,接收來自客戶端的會話請求。
[0023]會話(sess1n)是客戶端與服務(wù)器之間的不中斷的請求和響應(yīng)的序列??蛻舳讼蚍?wù)器發(fā)送請求。服務(wù)器接收請求后,向客戶端發(fā)送對請求的響應(yīng)。
[0024]客戶端向服務(wù)器發(fā)送的首次請求是需要創(chuàng)建會話的請求。該首次請求是對多個(gè)請求邏輯上計(jì)數(shù)的開始。根據(jù)該首次請求,服務(wù)器可以獲得客戶端的特殊標(biāo)識符。也就是說,服務(wù)器開始記住了該客戶端和該客戶端的請求。例如,當(dāng)用戶登錄或向購物車中添加一件商品時(shí),就開始一個(gè)會話。服務(wù)器可以根據(jù)會話來識別客戶端,比如可以使用會話級變量記錄當(dāng)前用戶已經(jīng)輸入的用戶名密碼,這樣就無需用戶每次發(fā)送請求都重新輸入了,還可以用來記錄一些其他的與當(dāng)前這一次會話有關(guān)的信息。當(dāng)客戶端明確結(jié)束會話或服務(wù)器在一個(gè)預(yù)定義的時(shí)限內(nèi)未從客戶端接收任何請求時(shí),會話就結(jié)束了。當(dāng)會話結(jié)束后,服務(wù)器就忘記了該客戶端以及該客戶端的請求。
[0025]具體地,用戶打開一個(gè)瀏覽器,訪問某一個(gè)網(wǎng)頁(web)站點(diǎn),在這個(gè)web站點(diǎn)點(diǎn)擊多個(gè)超鏈接,訪問服務(wù)器多個(gè)web資源,然后關(guān)閉瀏覽器,整個(gè)過程可以稱之為一個(gè)會話。一旦關(guān)閉了瀏覽器,當(dāng)重新打開瀏覽器時(shí),已經(jīng)不能再次利用上一次的會話了,需要新建一個(gè)會話。簡言之,會話是客戶端與服務(wù)器之間的一次通話,例如以利用瀏覽器的方式來實(shí)現(xiàn)。
[0026]如上所述,一個(gè)會話可能包括多個(gè)請求。在該步驟中,可以接收來自客戶端的屬于特定會話的一個(gè)請求。所接收的該請求可以是首次請求,也可以不是首次請求。
[0027]在步驟SI30中,根據(jù)會話請求,獲取客戶端的特定標(biāo)識符。
[0028]每個(gè)會話請求包括關(guān)于客戶端的特定標(biāo)識符的信息。由此,服務(wù)器能夠根據(jù)會話來確定客戶端。根據(jù)所接收的會話請求,服務(wù)器可以獲取客戶端的特定標(biāo)識符。該特定標(biāo)識符標(biāo)識了該會話請求來自于哪個(gè)客戶端。
[0029]可選地,特定標(biāo)識符是客戶端的互聯(lián)網(wǎng)協(xié)議(IP)地址,例如221.217.241.***。通常,會話請求中包括客戶端的IP地址。每個(gè)客戶端的IP地址是相對固定的,其可以用于標(biāo)識客戶端。利用IP地址作為客戶端的特定標(biāo)識符是非常方便且實(shí)用的,其能夠準(zhǔn)確地標(biāo)識客戶端,從而保證方案的順利實(shí)現(xiàn)。
[0030]可以理解,除了IP地址,特定標(biāo)識符也可以是客戶端的其他標(biāo)識信息,只要該標(biāo)識信息能夠唯一地標(biāo)識客戶端即可。
[0031]在一些示例中,客戶端可能通過代理服務(wù)器來訪問目標(biāo)服務(wù)器。目標(biāo)服務(wù)器是客戶端期望與之會話的服務(wù)器。在這些示例中,代理服務(wù)器可以將客戶端的會話請求轉(zhuǎn)發(fā)給目標(biāo)服務(wù)器,由此目標(biāo)服務(wù)器經(jīng)由代理服務(wù)器獲得客戶端的特定標(biāo)識符。
[0032]在步驟S150中,基于特定標(biāo)識符將客戶端分配給所有可用服務(wù)器中的特定服務(wù)器。
[0033]該特定服務(wù)器是為該客戶端服務(wù)的服務(wù)器。該特定服務(wù)器可以是根據(jù)客戶端的特定標(biāo)識符所確定的。每個(gè)特定標(biāo)識符唯一標(biāo)識一個(gè)客戶端,由此,可以確定將每個(gè)客戶端分配給特定的服務(wù)器。
[0034]本發(fā)明的上述負(fù)載分配方法100中,利用客戶端的特定標(biāo)識符建立客戶端與特定服務(wù)器之間的一一映射關(guān)系,從而能夠