專利名稱:一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法及系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及分布式緩存領域,特別涉及一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法及系統(tǒng)。
背景技術:
分布式緩存由于其性能強大、協(xié)議簡單、調(diào)用高效的優(yōu)點,使其在互聯(lián)網(wǎng)中得到廣泛應用。當局部緩存節(jié)點故障時,可以通過將故障節(jié)點刪除,新增緩存節(jié)點保證分布式緩存 的高效率服務。但是,在分布式緩存提供高效率服務的同時,忽略了客戶端緩存節(jié)點維護的問題。目前客戶端要使用分布式緩存節(jié)點,需要預先將分布式緩存節(jié)點的集合配置到客戶端,由客戶端把要存儲的數(shù)據(jù)分布在各個緩存節(jié)點上。然而,客戶端所配置的緩存節(jié)點是預先靜態(tài)配置的固定的節(jié)點集合,在后續(xù)分布式緩存節(jié)點故障時,所刪除的故障節(jié)點不能及時從客戶端的節(jié)點集合中刪除,為了保證正常服務新增的節(jié)點也不能及時為客戶端服務,導致客戶端可用的節(jié)點越來越少,無法達到高速率存取的效果。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法及系統(tǒng)以實現(xiàn)刪除的故障緩存節(jié)點能夠及時從客戶端的節(jié)點集合中刪除,新增的緩存節(jié)點能夠及時為客戶端服務的目的。本發(fā)明提供了一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法,該方法包括根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端Π ;將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中;根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端Π ;將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除;在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點??蛇x地,所述根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,具體在客戶端通過監(jiān)聽所述通知獲得;所述將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,具體在客戶端將該新增可用緩存節(jié)點的IP地址和端口增加到客戶端的緩存節(jié)點集合中;所述根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,具體在客戶端通過監(jiān)聽所述通知獲得;所述將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,具體從客戶端的緩存節(jié)點集合中刪除。
可選地,所述根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,具體在狀態(tài)服務器端通過監(jiān)聽所述通知獲得;所述將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,具體在狀態(tài)服務器端將該新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合中;所述根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,具體在狀態(tài)服務器端通過監(jiān)聽所述通知獲得;所述將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,具體從狀態(tài)服務器的緩存節(jié)點集合中刪除;將所述緩存節(jié)點集合作為客戶端的緩存節(jié)點集合之前,還將所述緩存節(jié)點集合從 狀態(tài)服務器端發(fā)送到所述客戶端??蛇x地,所述將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端具體在當前時間距離上一次將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端的時間的時間間隔等于定時時間時發(fā)送??蛇x地,所述將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端具體在接收到客戶端更新緩存節(jié)點集合請求時發(fā)送??蛇x地,所述客戶端具體在連接緩存節(jié)點失敗時向狀態(tài)服務器發(fā)送所述更新緩存節(jié)點集合請求??蛇x地,所述客戶端具體在監(jiān)聽到狀態(tài)服務器發(fā)送更新通知時,向狀態(tài)服務器發(fā)送所述更新緩存節(jié)點集合請求;所述狀態(tài)服務器端具體在將新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合時和將不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除時,發(fā)送更新通知??蛇x地,所述接收新增可用緩存節(jié)點的通知和所述刪除不可用緩存節(jié)點的通知具體從緩存監(jiān)控服務器獲得;其中所述緩存監(jiān)控服務器具體通過以下步驟生成新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知通過獲得新增緩存節(jié)點的IP地址和端口,生成新增可用緩存節(jié)點的通知,所述通知包括該新增緩存節(jié)點的IP地址和端口,且將該IP地址和端口保存在緩存監(jiān)控服務器的緩存節(jié)點集合中;從保存的緩存節(jié)點集合獲得緩存節(jié)點的IP地址和端口,向各個緩存節(jié)點發(fā)出訪問,在沒收到緩存節(jié)點的反饋時,生成刪除不可用緩存節(jié)點的通知,所述通知包括該沒收到反饋的緩存節(jié)點的IP地址和端口。本發(fā)明還提供一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的系統(tǒng),該系統(tǒng)包括緩存節(jié)點更新模塊用于根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除;客戶端更新模塊用于在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點。
可選地,所述緩存節(jié)點更新模塊具體用于在客戶端根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到客戶端的緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從客戶端的緩存節(jié)點集合中刪除。可選地,所述緩存節(jié)點更新模塊具體用于在狀態(tài)服務器端根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從狀態(tài)服務器的緩存節(jié)點集合中刪除;所述緩存節(jié)點更新模塊還用于將所述緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到在客戶端的客戶端更新模塊??蛇x地,所述緩存節(jié)點更新模塊具體用于從緩存監(jiān)控服務器接收新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知;緩存監(jiān)控服務器用于通過獲得新增緩存節(jié)點的IP地址和端口,生成新增可用緩存節(jié)點的通知,所述通知包括該新增緩存節(jié)點的IP地址和端口,且將該IP地址和端口保存在緩存監(jiān)控服務器的緩存節(jié)點集合中,通過保存的緩存節(jié)點集合獲得緩存節(jié)點的IP地址和端口,向各個緩存節(jié)點發(fā)出訪問,在沒收到緩存節(jié)點的反饋時,生成刪除不可用緩存節(jié)點的通知,所述通知包括該沒收到反饋的緩存節(jié)點的IP地址和端口??梢姳景l(fā)明具有如下有益效果由于本發(fā)明根據(jù)所接收的新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知,及時得到新增和不可用緩存節(jié)點的IP地址和端口,將新增緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,將不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,從而得到動態(tài)更新的可用緩存節(jié)點的集合,在客戶端應用所述緩存節(jié)點集合使客戶端將訪問發(fā)送到可用節(jié)點,實現(xiàn)了刪除的故障緩存節(jié)點能夠及時從客戶端的節(jié)點集合中刪除,新增加的緩存節(jié)點能夠及時為客戶端服務的目的。
圖I是本發(fā)明一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法的流程圖;圖2是本發(fā)明一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的系統(tǒng)的組成圖;圖3是本發(fā)明一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的系統(tǒng)的一實施例組成圖;圖4是本發(fā)明一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的系統(tǒng)的另一實施例組成圖。
具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明實施例作進一步詳細的說明。
參見圖1,為本發(fā)明提供的一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法的流程圖,如圖所示,該方法包括S101、根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口 ;S102、將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中;S103、根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口 ;S104、將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除;S105、在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合的緩存節(jié)點。應用該實施例實現(xiàn)的方法,根據(jù)所接收的新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知,及時得到新增和不可用緩存節(jié)點的IP地址和端口,將新增緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,將不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,從而得到動態(tài)更新的可用緩存節(jié)點的集合,在客戶端應用所述緩存節(jié)點集合使客戶端將訪問發(fā)送到可用節(jié)點,實現(xiàn)了刪除的故障緩存節(jié)點能夠及時從客戶端的節(jié)點集合中刪除,新增加的緩存節(jié)點能夠及時為客戶端服務的目的。在本發(fā)明的一個實施例中,該方法步驟SlOl到S104可以在客戶端完成,具體地其中,步驟SlOl根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,具體在客戶端通過監(jiān)聽所述通知獲得;其中,步驟S102所述將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,具體在客戶端將該新增可用緩存節(jié)點的IP地址和端口增加到客戶端的緩存節(jié)點集合中;其中,步驟S103所述根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,具體在客戶端通過監(jiān)聽所述通知獲得;其中,步驟S104所述將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,具體從客戶端的緩存節(jié)點集合中刪除。在本發(fā)明的另一實施例中,步驟SlOl到S104可以在狀態(tài)服務器端完成,具體地其中,步驟SlOl所述根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,具體在狀態(tài)服務器端通過監(jiān)聽所述通知獲得;其中,步驟S102所述將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,具體在狀態(tài)服務器端將該新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合中;其中,步驟S103所述根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,具體在狀態(tài)服務器端通過監(jiān)聽所述通知獲得;其中,步驟S104所述將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,具體從狀態(tài)服務器的緩存節(jié)點集合中刪除;而且,在該實施例中,將所述緩存節(jié)點集合作為客戶端的緩存節(jié)點集合之前,還將所述緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到所述客戶端;其中,所述將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端具體可以在當前時間距離上一次將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端的時間的時間間隔等于定時時間時發(fā)送;還可以在接收到客戶端更新緩存節(jié)點集合請求時發(fā)送。其中,所述客戶端具 體可以在連接緩存節(jié)點失敗時向狀態(tài)服務器發(fā)送所述更新緩存節(jié)點集合請求。還可以在監(jiān)聽到狀態(tài)服務器發(fā)送更新通知時,向狀態(tài)服務器發(fā)送所述更新緩存節(jié)點集合請求,其中,所述狀態(tài)服務器端具體在將新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合時和將不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除時,發(fā)送更新通知。需要說明的是,其中,步驟S105在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點,具體可以在客戶端應用所述緩存節(jié)點集合,采用哈希算法將客戶端的訪問發(fā)送到各個可用緩存節(jié)點IP地址和端口。應用該實施例實現(xiàn)的方法,在狀態(tài)服務器端動態(tài)更新可用緩存節(jié)點的集合,可以使得各個客戶端均從狀態(tài)服務器獲取動態(tài)更新的可用緩存節(jié)點的集合,保持分布式緩存節(jié)點在各個客戶端的一致性,使可用的緩存節(jié)點都能夠及時應用到各個客戶端,而不必由各個客戶端各自負責緩存節(jié)點的動態(tài)更新,提高了緩存節(jié)點更新的效率和一致性。下面對在以上實施例中步驟SlOl和步驟S103所述接收的通知進行解釋,具體地,所述接收新增可用緩存節(jié)點的通知和所述刪除不可用緩存節(jié)點的通知具體可以從緩存監(jiān)控服務器獲得,其中,所述緩存監(jiān)控服務器具體可以通過以下步驟生成新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知通過獲得新增緩存節(jié)點的IP地址和端口,生成新增可用緩存節(jié)點的通知,所述通知包括該新增緩存節(jié)點的IP地址和端口,且將該IP地址和端口保存在緩存監(jiān)控服務器的緩存節(jié)點集合中;從保存的緩存節(jié)點集合獲得緩存節(jié)點的IP地址和端口,向各個緩存節(jié)點發(fā)出訪問,在沒收到緩存節(jié)點的反饋時,生成刪除不可用緩存節(jié)點的通知,所述通知包括該沒收到反饋的緩存節(jié)點的IP地址和端口。在本發(fā)明中應用緩存監(jiān)控服務器向緩存節(jié)點發(fā)出訪問,保持與緩存節(jié)點的通訊,在沒收到緩存節(jié)點的反饋時,可以確定該緩存節(jié)點故障不可用,返回刪除不可用緩存節(jié)點的通知,可以實現(xiàn)及時發(fā)現(xiàn)節(jié)點故障的目的;獲得新增緩存節(jié)點的IP地址和端口后,將該IP地址和端口保存在緩存監(jiān)控服務器的緩存節(jié)點集合中,并發(fā)出新增可用緩存節(jié)點的通知,可以實現(xiàn)使客戶端的節(jié)點集合及時獲得新增節(jié)點的目的,需要說明的是,該生成新增緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知的緩存監(jiān)控服務器僅僅是本發(fā)明的一種實施方式,在本發(fā)明方法基礎上,還可以有其他獲得新增緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知的方法,本發(fā)明在此方面不受任何限制。參見圖2,為本發(fā)明提供的一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的系統(tǒng),如圖所示,該系統(tǒng)包括緩存節(jié)點更新模塊201 :用于根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除;客戶端更新模塊202 :用于在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點。在本發(fā)明系統(tǒng)的一個實施例中,參見圖3,所述緩存節(jié)點更新模塊301 :具體可以用于在客戶端根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到客戶端的緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從客戶端的緩存節(jié)點集合中刪除;所述客戶端更新模塊302 :具體可以用于從所述緩存節(jié)點更新模塊301接收所述緩存節(jié)點集合,在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點。在本發(fā)明系統(tǒng)的另一個實施例中,參見圖4,所述緩存節(jié)點更新模塊401 :具體可 以用于在狀態(tài)服務器端根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從狀態(tài)服務器的緩存節(jié)點集合中刪除;所述緩存節(jié)點更新模塊401 :還用于將所述緩存節(jié)點集合從狀態(tài)服務器發(fā)送到所述客戶端;所述客戶端更新模塊402 :具體可以用于從在狀態(tài)服務器端的緩存節(jié)點更新模塊401接收所述緩存節(jié)點集合,在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點。其中,上述系統(tǒng)實施例中所述緩存節(jié)點更新模塊301和401 :具體可以用于從緩存監(jiān)控服務器接收新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知; 其中,所述緩存監(jiān)控服務器303和403 :具體可以用于通過獲得新增緩存節(jié)點的IP地址和端口,生成新增可用緩存節(jié)點的通知,所述通知包括該新增緩存節(jié)點的IP地址和端口,且將該IP地址和端口保存在緩存監(jiān)控服務器的緩存節(jié)點集合中,通過保存的緩存節(jié)點集合獲得緩存節(jié)點的IP地址和端口,向各個緩存節(jié)點發(fā)出訪問,在沒收到緩存節(jié)點的反饋時,生成刪除不可用緩存節(jié)點的通知,所述通知包括該沒收到反饋的緩存節(jié)點的IP地址和端口。需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。
權利要求
1.一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法,其特征在于,包括 根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口 ; 將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中; 根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口 ; 將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除; 在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點。
2.根據(jù)權利要求I所述的方法,其特征在于,所述根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,具體在客戶端通過監(jiān)聽所述通知獲得; 所述將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,具體在客戶端將該新增可用緩存節(jié)點的IP地址和端口增加到客戶端的緩存節(jié)點集合中; 所述根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,具體在客戶端通過監(jiān)聽所述通知獲得; 所述將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,具體從客戶端的緩存節(jié)點集合中刪除。
3.根據(jù)權利要求I所述的方法,其特征在于, 所述根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,具體在狀態(tài)服務器端通過監(jiān)聽所述通知獲得; 所述將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,具體在狀態(tài)服務器端將該新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合中;所述根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,具體在狀態(tài)服務器端通過監(jiān)聽所述通知獲得; 所述將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除,具體從狀態(tài)服務器的緩存節(jié)點集合中刪除; 將所述緩存節(jié)點集合作為客戶端的緩存節(jié)點集合之前,還將所述緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到所述客戶端。
4.根據(jù)權利要求3所述的方法,其特征在于,所述將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端具體在當前時間距離上一次將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端的時間的時間間隔等于定時時間時發(fā)送。
5.根據(jù)權利要求3所述的方法,其特征在于,所述將緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到客戶端具體在接收到客戶端更新緩存節(jié)點集合請求時發(fā)送。
6.根據(jù)權利要求5所述的方法,其特征在于,所述客戶端具體在連接緩存節(jié)點失敗時向狀態(tài)服務器發(fā)送所述更新緩存節(jié)點集合請求。
7.根據(jù)權利要求5所述的方法,其特征在于,所述客戶端具體在監(jiān)聽到狀態(tài)服務器發(fā)送更新通知時,向狀態(tài)服務器發(fā)送所述更新緩存節(jié)點集合請求; 所述狀態(tài)服務器端具體在將新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合時和將不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除時,發(fā)送更新通知。
8.根據(jù)權利要求I到3任意一項所述的方法,其特征在于,所述接收新增可用緩存節(jié)點的通知和所述刪除不可用緩存節(jié)點的通知具體從緩存監(jiān)控服務器獲得; 其中所述緩存監(jiān)控服務器具體通過以下步驟生成新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知 通過獲得新增緩存節(jié)點的IP地址和端口,生成新增可用緩存節(jié)點的通知,所述通知包括該新增緩存節(jié)點的IP地址和端口,且將該IP地址和端口保存在緩存監(jiān)控服務器的緩存節(jié)點集合中; 從保存的緩存節(jié)點集合獲得緩存節(jié)點的IP地址和端口,向各個緩存節(jié)點發(fā)出訪問,在沒收到緩存節(jié)點的反饋時,生成刪除不可用緩存節(jié)點的通知,所述通知包括該沒收到反饋的緩存節(jié)點的IP地址和端口。
9.一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的系統(tǒng),其特征在于,包括 緩存節(jié)點更新模塊用于根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除; 客戶端更新模塊用于在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點。
10.根據(jù)權利要求9所述的系統(tǒng),其特征在于, 所述緩存節(jié)點更新模塊具體用于在客戶端根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到客戶端的緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從客戶端的緩存節(jié)點集合中刪除。
11.根據(jù)權利要求9所述的系統(tǒng),其特征在于, 所述緩存節(jié)點更新模塊具體用于在狀態(tài)服務器端根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口,將該新增可用緩存節(jié)點的IP地址和端口增加到狀態(tài)服務器的緩存節(jié)點集合中,根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口,將該不可用緩存節(jié)點的IP地址和端口從狀態(tài)服務器的緩存節(jié)點集合中刪除; 所述緩存節(jié)點更新模塊還用于將所述緩存節(jié)點集合從狀態(tài)服務器端發(fā)送到在客戶端的客戶端更新模塊。
12.根據(jù)權利要求9到11任意一項所述的系統(tǒng),其特征在于,所述緩存節(jié)點更新模塊具體用于從緩存監(jiān)控服務器接收新增可用緩存節(jié)點的通知和刪除不可用緩存節(jié)點的通知; 緩存監(jiān)控服務器用于通過獲得新增緩存節(jié)點的IP地址和端口,生成新增可用緩存節(jié)點的通知,所述通知包括該新增緩存節(jié)點的IP地址和端口,且將該IP地址和端口保存在緩存監(jiān)控服務器的緩存節(jié)點集合中,通過保存的緩存節(jié)點集合獲得緩存節(jié)點的IP地址和端口,向各個緩存節(jié)點發(fā)出訪問,在沒收到緩存節(jié)點的反饋時,生成刪除不可用緩存節(jié)點的通知,所述通知包括該沒收到反饋的緩存節(jié)點的IP地址和端口。
全文摘要
本發(fā)明公開了一種實現(xiàn)分布式緩存節(jié)點動態(tài)更新到客戶端的方法及系統(tǒng),包括根據(jù)所接收的新增可用緩存節(jié)點的通知,獲得新增可用緩存節(jié)點的IP地址和端口;將該新增可用緩存節(jié)點的IP地址和端口增加到緩存節(jié)點集合中;根據(jù)所接收的刪除不可用緩存節(jié)點的通知,獲得不可用緩存節(jié)點的IP地址和端口;將該不可用緩存節(jié)點的IP地址和端口從緩存節(jié)點集合中刪除;在客戶端應用所述緩存節(jié)點集合使客戶端將訪問請求發(fā)送到所述緩存節(jié)點集合中的緩存節(jié)點,實現(xiàn)了刪除的故障緩存節(jié)點能夠及時從客戶端的節(jié)點集合中刪除,新增的緩存節(jié)點能夠及時為客戶端服務的目的。
文檔編號H04L29/08GK102984267SQ20121052649
公開日2013年3月20日 申請日期2012年12月7日 優(yōu)先權日2012年12月7日
發(fā)明者何洲 申請人:北京搜狐新媒體信息技術有限公司