国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      集群服務(wù)器內(nèi)存管理方法及其系統(tǒng)的制作方法

      文檔序號:6471292閱讀:172來源:國知局
      專利名稱:集群服務(wù)器內(nèi)存管理方法及其系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種集群服務(wù)器技術(shù),特別涉及一種集群服務(wù)器內(nèi)存管理方法及其系統(tǒng)。
      背景技術(shù)
      當(dāng)今計(jì)算機(jī)技術(shù)已進(jìn)入以網(wǎng)絡(luò)為中心的計(jì)算時(shí)期,大量的服務(wù)和應(yīng)用都是圍繞著 Web進(jìn)行。這促進(jìn)Internet用戶劇烈增長和Internet流量爆炸式地增長。很多網(wǎng)絡(luò)服務(wù) 因?yàn)樵L問次數(shù)爆炸式地增長而不堪重負(fù),服務(wù)器不能及時(shí)處理用戶的請求,導(dǎo)致用戶進(jìn)行 長時(shí)間的等待,大大降低了服務(wù)質(zhì)量,越來越多的瓶頸出現(xiàn)在了服務(wù)器端。對于服務(wù)器端的 瓶頸,人們可以通過軟件或硬件的方式來得到解決。 現(xiàn)有的網(wǎng)絡(luò)服務(wù)采用如圖1所示的體系結(jié)構(gòu),由服務(wù)器端和客戶端組成。客戶端 主要由PC機(jī)、手機(jī)等可以接入網(wǎng)絡(luò)的設(shè)備組成。而服務(wù)器端主要由一些性能較高的服務(wù)器 組成。 網(wǎng)絡(luò)服務(wù)采用了請求\響應(yīng)的工作方式。用戶通過客戶端向服務(wù)器發(fā)出服務(wù)的請
      求;服務(wù)器端接受用戶的請求,將計(jì)算結(jié)果返回給客戶端,完成一次請求\響應(yīng)。如此反復(fù),
      用戶便可以獲得所有需要的服務(wù)。由于同時(shí)并發(fā)訪問服務(wù)器端的用戶請求會很多,單臺服
      務(wù)器不能及時(shí)處理所有的服務(wù)請求,所以服務(wù)器端一般會由多臺服務(wù)器提供服務(wù)。當(dāng)大量
      服務(wù)請求同時(shí)到達(dá)時(shí),采用負(fù)載均衡的方式,可以將服務(wù)請求相對均勻的分配到每個(gè)服務(wù)
      器。這樣,使得服務(wù)器端能及時(shí)的做出響應(yīng),保證了網(wǎng)絡(luò)服務(wù)的穩(wěn)定性。 如圖1所示,由于服務(wù)器端采用了多臺服務(wù)器提供相同的服務(wù),每個(gè)服務(wù)器上的
      內(nèi)存中必然存在著大量的相同數(shù)據(jù),因此,服務(wù)器端的內(nèi)存沒有得到很好的利用。 由于內(nèi)存是影響系統(tǒng)性能的重要因素,內(nèi)存不足直接影響著服務(wù)器響應(yīng)的速度。
      對于比較大的商業(yè)應(yīng)用而言,內(nèi)存的消耗是極大的。在這種體系結(jié)構(gòu)下,只能通過簡單的增
      加服務(wù)器內(nèi)存來解決系統(tǒng)對內(nèi)存的需求,這無疑增加了提供服務(wù)的成本。同時(shí),從現(xiàn)有服務(wù)
      器軟件的角度看,對內(nèi)存大小的支持存在著上限,有時(shí)即使內(nèi)存可以增加到足夠大,但得不
      到軟件的支持,問題仍然得不到解決。

      發(fā)明內(nèi)容
      本發(fā)明的目的是提供一種可以使集群服務(wù)器共享集群內(nèi)存的集群服務(wù)器內(nèi)存管 理方法。 本發(fā)明的另一目的是提供一種可以使集群服務(wù)器共享集群內(nèi)存的集群服務(wù)器內(nèi) 存管理系統(tǒng)。 根據(jù)本發(fā)明的一個(gè)方面,所提供的具有多個(gè)服務(wù)器的集群服務(wù)器內(nèi)存管理方法包 括以下步驟 A、在集群服務(wù)器中的每臺服務(wù)器中分別裝載集群管理器,這些集群管理器通過相 互通信構(gòu)成集群服務(wù)器的集群管理系統(tǒng);
      3
      B、所述集群管理系統(tǒng)統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存,從而使所有所述服務(wù)器的 內(nèi)存被配置成集群服務(wù)器的集群內(nèi)存。 其中,所述集群管理系統(tǒng)把所述集群內(nèi)存的存儲空間配置成多個(gè)容量相同的子存 儲空間并將這些子存儲空間均勻地分配給每個(gè)所述服務(wù)器,其中每個(gè)子存儲空間被分配給 不同編號。 其中,集群管理系統(tǒng)為每臺服務(wù)器分配相對均勻的數(shù)據(jù)量,并且為分配給每臺服 務(wù)器的每個(gè)數(shù)據(jù)添加與所述子存儲空間的編號相關(guān)聯(lián)的標(biāo)識信息,同時(shí)建立所述標(biāo)識信息 和數(shù)據(jù)的對應(yīng)關(guān)系表項(xiàng)。 所述統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存包括數(shù)據(jù)保存操作、數(shù)據(jù)查找操作和數(shù)據(jù)刪 除操作。 在數(shù)據(jù)保存操作中,集群管理系統(tǒng)根據(jù)標(biāo)識信息算出將要保存的數(shù)據(jù)的子存儲空 間,然后將數(shù)據(jù)保存到這個(gè)子存儲空間中,并且備份該數(shù)據(jù),將其保存到另一服務(wù)器的子存 儲空間中。 在數(shù)據(jù)查找操作中,集群管理系統(tǒng)依據(jù)與客戶端查找的數(shù)據(jù)相對應(yīng)的標(biāo)識信息, 算出保存該數(shù)據(jù)的子存儲空間的編號,由此返回已保存在該編號的子存儲空間中的數(shù)據(jù)。
      在數(shù)據(jù)刪除操作中,集群管理系統(tǒng)依據(jù)與將要刪除的數(shù)據(jù)相對應(yīng)的標(biāo)識信息,算 出保存該數(shù)據(jù)的子存儲空間的編號,由此刪除該子存儲空間中保存的數(shù)據(jù),并進(jìn)一步刪除 另一服務(wù)器上的備份數(shù)據(jù)。 為了優(yōu)化系統(tǒng)性能,如果保存在所述子存儲空間中數(shù)據(jù)超時(shí)未用,則集群管理系 統(tǒng)將其視為垃圾進(jìn)行回收,以便釋放子存儲空間。 本發(fā)明的每個(gè)集群管理器至少包括一個(gè)負(fù)責(zé)服務(wù)器內(nèi)存管理的內(nèi)存管理組件,和 一個(gè)負(fù)責(zé)服務(wù)器成員管理的服務(wù)器成員管理組件。 其中,當(dāng)所述服務(wù)器成員管理組件收到集群服務(wù)器新成員廣播的加入請求時(shí),所 述服務(wù)器成員管理組件為該新成員分配一個(gè)新標(biāo)識符(ID),然后所述內(nèi)存管理組件向具有 該標(biāo)識符的新成員分配相應(yīng)數(shù)量的子存儲空間。 其中,當(dāng)所述服務(wù)器成員管理組件收到集群服務(wù)器成員廣播的退出請求時(shí),內(nèi)存 管理組件收回已分配給該將要退出的成員的子存儲空間,將其轉(zhuǎn)移到其它服務(wù)器中。
      此外,每個(gè)集群管理器還包括用于所述內(nèi)存管理組件和所述服務(wù)器成員管理組 件消息發(fā)送的數(shù)據(jù)包調(diào)度組件和數(shù)據(jù)包發(fā)行組件,以及用于內(nèi)存管理組件和所述服務(wù)器成 員管理組件消息接收的數(shù)據(jù)包監(jiān)聽組件和數(shù)據(jù)包接收組件。 其中,所述數(shù)據(jù)包調(diào)度組件負(fù)責(zé)各類消息的標(biāo)準(zhǔn)化處理和分發(fā)及拆包;所述數(shù)據(jù) 包發(fā)行組件負(fù)責(zé)把所有數(shù)據(jù)包發(fā)送到指定的目的地;數(shù)據(jù)包監(jiān)聽組件負(fù)責(zé)監(jiān)聽各類消息數(shù) 據(jù)包;所述數(shù)據(jù)包接收組件負(fù)責(zé)將接收完整的數(shù)據(jù)包隊(duì)列,并還原成消息,并分發(fā)給所述內(nèi) 存管理組件和所述服務(wù)器成員管理組件中的相應(yīng)組件進(jìn)行處理。 根據(jù)本發(fā)明的另一方面,所提供的集群服務(wù)器內(nèi)存管理系統(tǒng)包括分別裝載到集群 服務(wù)器的每臺服務(wù)器中的集群管理器,這些集群管理器通過相互通信構(gòu)成集群管理系統(tǒng), 所述集群管理系統(tǒng)統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存,從而使所有所述服務(wù)器的內(nèi)存被配置 成集群服務(wù)器的集群內(nèi)存。 其中,所述集群管理系統(tǒng)把所述集群服務(wù)器的所述集群內(nèi)存的存儲空間配置成多個(gè)容量相同的子存儲空間,并將這些子存儲空間均勻地分配給每個(gè)所述服務(wù)器。 本發(fā)明的集群內(nèi)存管理致力于為J2EE或其他集群服務(wù)提供高效、透明、易于擴(kuò)展
      的內(nèi)存數(shù)據(jù)管理方案,使得服務(wù)節(jié)點(diǎn)間的內(nèi)存共享和數(shù)據(jù)管理就像在本機(jī)一樣簡單。 對于集群內(nèi)存管理技術(shù),所有的緩存服務(wù)均依賴于集群管理服務(wù),集群管理服務(wù)
      對外部調(diào)用是透明的,它確保集群中每個(gè)節(jié)點(diǎn)對集群拓?fù)浣Y(jié)構(gòu)的及時(shí)、完整的認(rèn)知。在此基
      礎(chǔ)上,各個(gè)緩存服務(wù)才能按照自己的數(shù)據(jù)管理策略來管理緩存的數(shù)據(jù)。各節(jié)點(diǎn)通過集群管
      理服務(wù)之間的通信來完成加入、離開集群、了解拓?fù)浣Y(jié)構(gòu)變化等動作,緩存服務(wù)通過集群管
      理服務(wù)了解集群組織情況,接收各種通知,從而完成數(shù)據(jù)的分布、備份、獲取等操作。外部調(diào)
      用者使用緩存服務(wù)提供的功能,對于數(shù)據(jù)實(shí)際分布情況以及節(jié)點(diǎn)分布情況完全不知,就好
      像操作本地?cái)?shù)據(jù)一樣。 下面結(jié)合附圖對本發(fā)明進(jìn)行詳細(xì)說明。


      圖1是現(xiàn)有的實(shí)施網(wǎng)路服務(wù)的集群服務(wù)器內(nèi)存的配置圖; 圖2是本發(fā)明的集群服務(wù)器的內(nèi)存配置圖; 圖3是實(shí)現(xiàn)本發(fā)明集群服務(wù)器內(nèi)存管理的一個(gè)實(shí)施例; 圖4是圖3所示的本發(fā)明的集群管理系統(tǒng)中的一個(gè)集群管理器的原理圖; 圖5是本發(fā)明的集群管理系統(tǒng)向集群服務(wù)器分配用于保存數(shù)據(jù)的子存儲空間以
      及保存數(shù)據(jù)的示意圖; 圖6是顯示本發(fā)明的子存儲空間、數(shù)據(jù)、標(biāo)識之間關(guān)系的示意圖;
      圖7是本發(fā)明的集群管理器的一個(gè)具體實(shí)例的示意圖。
      具體實(shí)施例方式
      圖2顯示了本發(fā)明的集群服務(wù)器內(nèi)存的配置,如圖2所示,本發(fā)明的關(guān)鍵是在集群 服務(wù)器中設(shè)置一個(gè)由集群服務(wù)器中所有服務(wù)器11、12、13共享的集群內(nèi)存2,該集群內(nèi)存由 圖3所示的集群管理系統(tǒng)3管理。 圖3顯示了本發(fā)明的實(shí)現(xiàn)集群內(nèi)存管理的一個(gè)實(shí)施例,從圖3中可以看到,在每個(gè) 集群服務(wù)器的每個(gè)服務(wù)器11、12、13中分別裝載集群管理器31、32、33,這些集群管理器通 過相互通信構(gòu)成本發(fā)明的集群管理系統(tǒng)3。集群管理系統(tǒng)3可以通過集群管理接口 41、42、 43統(tǒng)一管理集群服務(wù)器中每臺服務(wù)器的內(nèi)存,從而把集群服務(wù)器的所有服務(wù)器的內(nèi)存21、 22、23配置成由集群服務(wù)器共享的集群內(nèi)存2。因此,本發(fā)明的集群服務(wù)器內(nèi)存管理方法可 以包括以下步驟 A、在成為集群服務(wù)器成員的每臺服務(wù)器11、12、13中分別裝載集群管理器31、32、 33,這些集群管理器通過相互通信構(gòu)成集群服務(wù)器的集群管理系統(tǒng)3 ; B、由所述集群管理系統(tǒng)統(tǒng)一管理集群服務(wù)器中的每臺服務(wù)器的內(nèi)存21、22、23,從 而把集群服務(wù)器的所有服務(wù)器11 、 12 、 13的內(nèi)存21 、 22 、 23配置成由集群服務(wù)器共享的集群 內(nèi)存2。 其中,所述集群管理系統(tǒng)把所述集群服務(wù)器的集群內(nèi)存2的存儲空間配置成多個(gè) 容量相同的子存儲空間并將這些子存儲空間均勻地分配給每個(gè)所述服務(wù)器,其中每個(gè)子存儲空間被分配給不同編號。 圖5顯示了本發(fā)明的集群管理系統(tǒng)向集群服務(wù)器分配用于保存數(shù)據(jù)的子存儲空 間以及保存數(shù)據(jù)的方式。在圖5中,所述子存儲空間被具體化為類似哈希表中的桶。
      其中,集群管理系統(tǒng)為每臺服務(wù)器分配相對均勻的數(shù)據(jù)量,并且為分配給每臺服 務(wù)器的每個(gè)數(shù)據(jù)添加與所述子存儲空間的編號相關(guān)聯(lián)的標(biāo)識信息,并建立所述標(biāo)識信息和 數(shù)據(jù)的對應(yīng)關(guān)系表項(xiàng)。 在圖5中,每個(gè)服務(wù)器11、12、13內(nèi)存分得相對均勻的數(shù)據(jù)量。假設(shè)有4個(gè)數(shù)據(jù)要 分配給這三臺服務(wù)器11、12、13,那么有一臺服務(wù)器例如服務(wù)器11分得兩個(gè)數(shù)據(jù)如數(shù)據(jù)1、 數(shù)據(jù)2,其它服務(wù)器12、 13各分得一個(gè)數(shù)據(jù)如數(shù)據(jù)1和數(shù)據(jù)2。由此可見,每個(gè)服務(wù)器分得 的數(shù)據(jù)量最多相差一個(gè)。 集群管理系統(tǒng)2將集群服務(wù)器中的集群內(nèi)存的存儲空間配置成多個(gè)子存儲空間 或者桶。這樣,集群內(nèi)存會存在一定數(shù)量的桶,并且相對均勻的分布到每個(gè)服務(wù)器中,其中 每個(gè)桶被分配一個(gè)編號;然后,將每個(gè)數(shù)據(jù)保存到一個(gè)桶中。集群管理系統(tǒng)給每個(gè)數(shù)據(jù)添加 一個(gè)標(biāo)識信息,并存儲該標(biāo)識信息,同時(shí)建立該標(biāo)識信息與數(shù)據(jù)的對應(yīng)關(guān)系表項(xiàng)。作為一個(gè) 實(shí)例,該標(biāo)識信息可以是唯一 (特定)的key值,用此key值標(biāo)識該數(shù)據(jù)。另外該key值應(yīng) 當(dāng)與桶的編號相關(guān)聯(lián),例如通過映射表或散列表相關(guān)聯(lián),作為特例,桶的編號可以和key值 相同。圖6顯示了 key值、數(shù)據(jù)以及桶之間的一一對應(yīng)關(guān)系。 本發(fā)明利用緩存策略可以保證每個(gè)服務(wù)器內(nèi)存分得相對均勻的數(shù)據(jù)量。例如,采 用比較通用的哈希散列算法,能夠根據(jù)key將數(shù)據(jù)相對均勻的保存到每個(gè)桶,然后根據(jù)設(shè) 計(jì)好的算法將桶平均的保存到每臺服務(wù)器,以此實(shí)現(xiàn)負(fù)載均衡。 所述統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存包括數(shù)據(jù)保存操作、數(shù)據(jù)查找操作和數(shù)據(jù)刪 除操作。 在數(shù)據(jù)保存操作中,集群管理系統(tǒng)根據(jù)標(biāo)識信息算出將要保存的數(shù)據(jù)的子存儲空 間,然后將數(shù)據(jù)保存到這個(gè)子存儲空間中,并且備份該數(shù)據(jù),將其保存到另一服務(wù)器的子存 儲空間中。具體地說,集群管理系統(tǒng)2根據(jù)例如散列算法(散列表)算出將要保存的數(shù)據(jù)的 標(biāo)識信息如key值所對應(yīng)的子存儲空間或桶,然后將數(shù)據(jù)保存到這個(gè)子存儲空間或桶中, 并且備份該數(shù)據(jù)。 在數(shù)據(jù)查找操作中,集群管理系統(tǒng)依據(jù)與客戶端查找的數(shù)據(jù)相對應(yīng)的標(biāo)識信息, 算出保存該數(shù)據(jù)的子存儲空間的編號,由此返回已保存在該編號的子存儲空間中的數(shù)據(jù)。 具體地說,集群管理系統(tǒng)2根據(jù)例如散列算法(散列表)算出客戶端要查找的數(shù)據(jù)的標(biāo)識 信息如key值所對應(yīng)的子存儲空間或桶的編號,由此返回已保存在該編號的子存儲空間或 桶中的數(shù)據(jù)。 在數(shù)據(jù)刪除操作中,集群管理系統(tǒng)依據(jù)與將要刪除的數(shù)據(jù)相對應(yīng)的標(biāo)識信息,算
      出保存該數(shù)據(jù)的子存儲空間的編號,由此刪除該子存儲空間中保存的數(shù)據(jù)以及備份數(shù)據(jù)。 在數(shù)據(jù)刪除操作中,集群管理系統(tǒng)依據(jù)與將要刪除的數(shù)據(jù)相對應(yīng)的標(biāo)識信息,找
      到或算出保存該數(shù)據(jù)的子存儲空間,然后刪除其中所保存的數(shù)據(jù)和備份的數(shù)據(jù)。 為了優(yōu)化系統(tǒng)性能,如果保存在所述子存儲空間中數(shù)據(jù)超時(shí)未用,則集群管理系
      統(tǒng)將其視為垃圾進(jìn)行回收,以便釋放子存儲空間。 本發(fā)明的每個(gè)集群管理器至少包括一個(gè)負(fù)責(zé)服務(wù)器內(nèi)存管理的內(nèi)存管理組件,
      6如Cache Service組件;和一個(gè)負(fù)責(zé)服務(wù)器成員管理的服務(wù)器成員管理組件,如Cluster Service組件。 其中,當(dāng)所述服務(wù)器成員管理組件收到集群服務(wù)器新成員廣播的加入請求時(shí),所 述服務(wù)器成員管理組件為該新成員分配一個(gè)新標(biāo)識符(ID),然后所述內(nèi)存管理組件向具有 該標(biāo)識符的新成員分配相應(yīng)數(shù)量的子存儲空間。 其中,當(dāng)所述服務(wù)器成員管理組件收到集群服務(wù)器成員廣播的退出請求時(shí),內(nèi)存 管理組件收回已分配給該將要退出的成員的子存儲空間,將其轉(zhuǎn)移到其它服務(wù)器中。
      如圖7所示,每個(gè)集群管理器還應(yīng)當(dāng)包括用于所述內(nèi)存管理組件和所述服務(wù)器 成員管理組件消息發(fā)送的數(shù)據(jù)包調(diào)度組件(即,Packet Dispatcher組件)和數(shù)據(jù)包發(fā)行 組件(即,Packet Publisher組件),以及用于內(nèi)存管理組件和所述服務(wù)器成員管理組件 消息接收的數(shù)據(jù)包監(jiān)聽組件(即,PacketListener組件)和數(shù)據(jù)包接收組件(即,Packet Receiver組件)。 其中,所述數(shù)據(jù)包調(diào)度組件負(fù)責(zé)各類消息的標(biāo)準(zhǔn)化處理和分發(fā)和拆包;所述數(shù)據(jù) 包發(fā)行組件負(fù)責(zé)把所有數(shù)據(jù)包的發(fā)送到指定的目的地;數(shù)據(jù)包監(jiān)聽組件負(fù)責(zé)監(jiān)聽各類消息 數(shù)據(jù)包;所述數(shù)據(jù)包接收組件負(fù)責(zé)將接收完整的數(shù)據(jù)包隊(duì)列,并還原成消息,并分發(fā)給所述 內(nèi)存管理組件和所述服務(wù)器成員管理組件中的相應(yīng)組件進(jìn)行處理。 例如,對于外部的數(shù)據(jù)操作請求,內(nèi)存管理組件(即Cache Service組件)會根據(jù) 緩存算法,查出該數(shù)據(jù)存放的位置。然后,向目標(biāo)服務(wù)器發(fā)送數(shù)據(jù)操作的消息,目標(biāo)機(jī)器會 根據(jù)消息的類型以及所攜帶的內(nèi)容,獲知具體的操作內(nèi)容并將操作結(jié)果返回給源服務(wù)器。
      如圖7所示,CacheService組件或Cluster Service組件通過消息的發(fā)送與接 收來進(jìn)行通信,消息的發(fā)送與接收大致經(jīng)過三層的操作。首先,從最上層的CacheService 組件或Cluster Service開始,產(chǎn)生消息,交給下 一 層的PacketDispacter組件, PacketDispatcher組件負(fù)責(zé)將消息按照約定規(guī)則拆分成網(wǎng)絡(luò)包,通過PacketPublisher組 件將所有的包發(fā)送出去;然后,目標(biāo)服務(wù)器的PacketReceiver組件會接受到網(wǎng)絡(luò)包,將其 放到上層的PacketReceiver組件,由PacketReceiver組件將包還原為消息,最后,將消息 交給上層相應(yīng)的組件(CacheService組件或Cluster Service組件之一 )來處理消息。
      本發(fā)明還設(shè)有異常處理機(jī)制,異常處理主要指,系統(tǒng)中的服務(wù)器發(fā)生異常宕機(jī)時(shí) 如何從備份機(jī)恢復(fù)保存的數(shù)據(jù)。 為了及時(shí)監(jiān)測系統(tǒng)中各個(gè)服務(wù)器運(yùn)行的狀態(tài),以便處理發(fā)生的異常,系統(tǒng)中有一 個(gè)專門的PointSca皿er組件。該組件能及時(shí)的發(fā)現(xiàn)宕機(jī)的服務(wù)器,然后觸發(fā)一個(gè)恢復(fù)數(shù)據(jù) 的事件,通過消息的方式發(fā)送給系統(tǒng)中的每個(gè)服務(wù)器,通過在其他服務(wù)器上保存的備份數(shù) 據(jù)完成恢復(fù)的工作。 具體地說,服務(wù)器狀態(tài)由Pointer Sca皿er組件監(jiān)控,每臺服務(wù)器上都部署有該組 件,服務(wù)器之間按照指定的時(shí)間間隔相互做ping操作,當(dāng)達(dá)到預(yù)設(shè)的閥值被ping的服務(wù)器 無法響應(yīng)時(shí),整個(gè)集群發(fā)出廣播,宕機(jī)服務(wù)器的數(shù)據(jù)由備份服務(wù)器恢復(fù),所有的桶按照指定 算法重新均衡。 本發(fā)明的集群服務(wù)器內(nèi)存管理系統(tǒng)包括分別裝載到屬于集群服務(wù)器成員的每臺 服務(wù)器中的集群管理器31、32、33,這些集群管理器通過相互通信構(gòu)成集群管理系統(tǒng)3,集 群管理系統(tǒng)3統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存21、22、23,使所有所述服務(wù)器的內(nèi)存被配置成集群服務(wù)器的集群內(nèi)存2。 其中,所述集群管理系統(tǒng)3把所述集群服務(wù)器的所述集群內(nèi)存的存儲空間配置成 多個(gè)容量相同的子存儲空間或者桶,并將這些子存儲空間均勻地分配給每個(gè)所述服務(wù)器。
      另外,本發(fā)明還能夠提供以下功能
      擴(kuò)展能力 如果在集群中添加更多的服務(wù)器,系統(tǒng)可以獲得更大的緩存容量和更快的處理 性能。例如分布式緩存查詢,查詢量上升,但查詢時(shí)間減少。
      無單一失敗點(diǎn) 系統(tǒng)采用完全對等的peer-to-peer模型,確保沒有單一的失敗點(diǎn),所有服務(wù)器都
      能承擔(dān)管理緩存的全部角色。
      快速失敗轉(zhuǎn)移和失敗恢復(fù) 系統(tǒng)的主要設(shè)計(jì)目標(biāo)之一,實(shí)現(xiàn)幾乎瞬時(shí)的失敗轉(zhuǎn)移(分流失效服務(wù)器負(fù)載)和 失敗恢復(fù)(允許恢復(fù)后重新加載緩存)。
      高效讀寫訪問 運(yùn)用了專門為優(yōu)化讀寫速度設(shè)計(jì)的協(xié)議,外部應(yīng)用在使用持續(xù)更新存儲數(shù)據(jù),例 如用戶會話信息時(shí)能獲得較大的性能提升。結(jié)合了數(shù)據(jù)容錯(cuò)和寫緩存,數(shù)據(jù)庫吞吐量上升, 延時(shí)顯著減少
      數(shù)據(jù)一致 集群范圍的完全一致.所有成員對于緩存數(shù)據(jù)都保持相同的看法。
      事務(wù)同步與鎖定 系統(tǒng)支持事務(wù)、同步和鎖定,這些特點(diǎn)有助于保證強(qiáng)勁的緩存數(shù)據(jù)管理能力。
      本發(fā)明同時(shí)還具有以下技術(shù)效果 1、順滑性集群成員加入、退出(正常退出或異常退出)的平滑過渡,對上層應(yīng)用 透明,且上層業(yè)務(wù)對于集群成員的變動全無察覺。 2、高效性集群成員變動的、負(fù)載轉(zhuǎn)移的快速處理,巧妙的避免由于節(jié)點(diǎn)完全對 等所帶來的決策效率低下,同時(shí)最大的發(fā)揮各對等節(jié)點(diǎn)的并行計(jì)算能力(民主與集中的問 題)。優(yōu)良的并發(fā)訪問能力,對于資源同步訪問互斥和效率,取最佳契合點(diǎn)(對于同步的精 細(xì)控制)。 3、平衡性系統(tǒng)負(fù)載的動態(tài)平衡,不論節(jié)點(diǎn)加入或退出,保證集群系統(tǒng)都不會出現(xiàn) 明顯弱點(diǎn),依靠精良的算法,保證節(jié)點(diǎn)變動所帶來的負(fù)載變化最快的達(dá)到平衡狀態(tài),使集群 資源最優(yōu)化利用,就好比木桶,每一塊木片都一樣高。 盡管上文對本發(fā)明進(jìn)行了詳細(xì)說明,但是本發(fā)明不限于此,本技術(shù)領(lǐng)域技術(shù)人員 可以根據(jù)本發(fā)明的原理進(jìn)行各種修改。因此,凡按照本發(fā)明原理所作的修改,都應(yīng)當(dāng)理解為 落入本發(fā)明的保護(hù)范圍。
      8
      權(quán)利要求
      一種集群服務(wù)器內(nèi)存管理方法,所述集群服務(wù)器包括多個(gè)服務(wù)器,該方法包括以下步驟A)在集群服務(wù)器的每臺服務(wù)器中分別裝載集群管理器,這些集群管理器通過相互通信構(gòu)成集群服務(wù)器的集群管理系統(tǒng);B)所述集群管理系統(tǒng)統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存,從而使所有所述服務(wù)器的內(nèi)存被配置成集群服務(wù)器的集群內(nèi)存。
      2. 根據(jù)權(quán)利要求1所述的方法,其中所述集群管理系統(tǒng)把所述集群內(nèi)存的存儲空間配 置成多個(gè)容量相同的子存儲空間并將這些子存儲空間均勻地分配給每個(gè)所述服務(wù)器,其中 每個(gè)子存儲空間被分配給不同編號。
      3. 根據(jù)權(quán)利要求1所述的方法,其中集群管理系統(tǒng)為每臺服務(wù)器分配相對均勻的數(shù) 據(jù)量,并且為分配給每臺服務(wù)器的每個(gè)數(shù)據(jù)添加與所述子存儲空間的編號相關(guān)聯(lián)的標(biāo)識信 息,并建立所述標(biāo)識信息和數(shù)據(jù)的對應(yīng)關(guān)系表項(xiàng)。
      4. 根據(jù)權(quán)利要求1所述的方法,其中所述統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存包括數(shù)據(jù)保 存操作、數(shù)據(jù)查找操作和數(shù)據(jù)刪除操作。
      5. 根據(jù)權(quán)利要求4所述的方法,其中在數(shù)據(jù)保存操作中,集群管理系統(tǒng)根據(jù)標(biāo)識信息算出將要保存的數(shù)據(jù)的子存儲空間,然后將數(shù)據(jù)保存到這個(gè)子存儲空間中。
      6. 根據(jù)權(quán)利要求4所述的方法,其中在數(shù)據(jù)查找操作中,集群管理系統(tǒng)依據(jù)與客戶端查找的數(shù)據(jù)相對應(yīng)的標(biāo)識信息,算出保存該數(shù)據(jù)的子存儲空間的編號,由此返回已保存在 該編號的子存儲空間中的數(shù)據(jù)。
      7. 根據(jù)權(quán)利要求4所述的方法,其中在數(shù)據(jù)刪除操作中,集群管理系統(tǒng)依據(jù)與將要刪 除的數(shù)據(jù)相對應(yīng)的標(biāo)識信息,算出保存該數(shù)據(jù)的子存儲空間的編號,由此刪除該子存儲空 間中保存的數(shù)據(jù)。
      8. 根據(jù)權(quán)利要求1所述的方法,其中每個(gè)所述集群管理器至少包括一個(gè)負(fù)責(zé)服務(wù)器內(nèi) 存管理的內(nèi)存管理組件;和一個(gè)負(fù)責(zé)服務(wù)器成員管理的服務(wù)器成員管理組件。
      9. 根據(jù)權(quán)利要求8所述的方法,其中當(dāng)所述服務(wù)器成員管理組件收到集群服務(wù)器新成員廣播的加入請求時(shí),所述服務(wù)器成 員管理組件為該新成員分配一個(gè)新標(biāo)識符,然后所述內(nèi)存管理組件向具有該標(biāo)識符的新成 員分配相應(yīng)數(shù)量的子存儲空間;當(dāng)所述服務(wù)器成員管理組件收到集群服務(wù)器成員廣播的退出請求時(shí),內(nèi)存管理組件收 回已分配給該將要退出的成員的子存儲空間,將其轉(zhuǎn)移到其它服務(wù)器中。
      10. —種集群服務(wù)器內(nèi)存管理系統(tǒng),包括分別裝載到集群服務(wù)器中的每臺服務(wù)器中的 集群管理器,這些集群管理器通過相互通信構(gòu)成集群管理系統(tǒng),所述集群管理系統(tǒng)統(tǒng)一管 理所述每臺服務(wù)器的內(nèi)存,從而使所有所述服務(wù)器的內(nèi)存被配置成集群服務(wù)器的集群內(nèi) 存。
      全文摘要
      本發(fā)明公開了一種集群服務(wù)器內(nèi)存管理方法及其系統(tǒng),所述方法包括以下步驟在集群服務(wù)器的每臺服務(wù)器中分別裝載集群管理器,這些集群管理器通過相互通信構(gòu)成集群服務(wù)器的集群管理系統(tǒng);所述集群管理系統(tǒng)統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存,從而使所有所述服務(wù)器的內(nèi)存被配置成集群服務(wù)器的集群內(nèi)存。本發(fā)明還公開了一種集群服務(wù)器內(nèi)存管理系統(tǒng),包括分別裝載到集群服務(wù)器中的每臺服務(wù)器中的集群管理器,這些集群管理器通過相互通信構(gòu)成集群管理系統(tǒng),所述集群管理系統(tǒng)統(tǒng)一管理所述每臺服務(wù)器的內(nèi)存,從而使所有所述服務(wù)器的內(nèi)存被配置成集群服務(wù)器的集群內(nèi)存。
      文檔編號G06F12/00GK101753405SQ20081022788
      公開日2010年6月23日 申請日期2008年12月2日 優(yōu)先權(quán)日2008年12月2日
      發(fā)明者龔濤 申請人:北京空中信使信息技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1