集群管理方法及其管理系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種集群管理方法,包括步驟:邏輯服務(wù)器向集群管理服務(wù)器注冊自身服務(wù);所述集群管理服務(wù)器接收服務(wù)消費端的服務(wù)請求;所述集群管理服務(wù)器發(fā)送與所述服務(wù)請求相匹配的邏輯服務(wù)器地址列表給所述服務(wù)消費端;所述服務(wù)消費端接收所述邏輯服務(wù)器地址列表;以及所述服務(wù)消費端從所述邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器來提供服務(wù)?;谏鲜黾汗芾矸椒煽焖贋榉?wù)消費者配備可選擇的作為服務(wù)提供者的邏輯服務(wù)器,且本發(fā)明還公開了應(yīng)用該集群管理方法的集群管理系統(tǒng)。
【專利說明】
集群管理方法及其管理系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及分布式服務(wù)器集群管理領(lǐng)域,尤其涉及一種集群管理方法及其管理系統(tǒng)。
【背景技術(shù)】
[0002]分布式協(xié)作服務(wù)是云計算范疇的一個領(lǐng)域,傳統(tǒng)的分布式協(xié)作服務(wù)系統(tǒng)中的服務(wù)提供者是通過服務(wù)注冊端注冊,再通過服務(wù)注冊端將其注冊到服務(wù)器上,服務(wù)消費者需要訂閱服務(wù)時是通過服務(wù)訂閱端再從服務(wù)器中獲取服務(wù)信息,該方法未實現(xiàn)服務(wù)消費者、月艮務(wù)提供者以及服務(wù)器之間的直接通訊,因此不能快速配置服務(wù)提供者給服務(wù)消費者,尤其是當若干服務(wù)消費者請求服務(wù)時,容易造成系統(tǒng)癱瘓,尤其是隨著智能產(chǎn)品的發(fā)展,應(yīng)用產(chǎn)品后臺支撐系統(tǒng)也越來越復(fù)雜和龐大,此時,更對有序管理以及快速處理服務(wù)請求方法更加迫切。
【發(fā)明內(nèi)容】
[0003]有鑒于此,實有必要提供一種快速為服務(wù)消費者配備可選擇的服務(wù)提供者的集群管理系統(tǒng)及其方法。
[0004]本發(fā)明提供的技術(shù)方案:一種集群管理方法,包括步驟:邏輯服務(wù)器向集群管理服務(wù)器注冊自身服務(wù);所述集群管理服務(wù)器接收服務(wù)消費端的服務(wù)請求;所述集群管理服務(wù)器發(fā)送與所述服務(wù)請求相匹配的邏輯服務(wù)器地址列表給所述服務(wù)消費端;所述服務(wù)消費端接收所述邏輯服務(wù)器地址列表;以及所述服務(wù)消費端從所述邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器來提供服務(wù)。
[0005]—種集群管理系統(tǒng),包括集群管理服務(wù)器、若干個與集群管理服務(wù)器通訊的邏輯服務(wù)器以及若干個與集群管理服務(wù)器通訊的服務(wù)消費端,所述邏輯服務(wù)器充當服務(wù)提供者,用于為所述服務(wù)消費端提供服務(wù);所述集群管理服務(wù)器用于統(tǒng)籌管理所述邏輯服務(wù)器以及所述消費服務(wù)端,所述邏輯服務(wù)器包括注冊模塊;所述集群管理服務(wù)器包括第一接收模塊以及第一發(fā)送模塊;所述服務(wù)消費端包括第二接收模塊和選擇模塊,所述注冊模塊用于所述邏輯服務(wù)器向所述集群管理服務(wù)器注冊自身服務(wù);所述第一接收模塊用于所述集群管理服務(wù)器接收所述服務(wù)消費端的服務(wù)請求;所述第一發(fā)送模塊用于所述集群管理服務(wù)器發(fā)送與所述服務(wù)請求相匹配的邏輯服務(wù)器地址列表給所述服務(wù)消費端;所述第二接收模塊用于接收所述邏輯服務(wù)器地址列表,以及所述選擇模塊用于所述服務(wù)消費端從所述邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器來提供服務(wù)。
[0006]基于上述集群管理方法和系統(tǒng),集群管理服務(wù)器統(tǒng)籌管理邏輯服務(wù)器和服務(wù)消費端,建立了三者之間彼此的通訊,邏輯服務(wù)器作為服務(wù)提供者,直接將服務(wù)注冊到集群管理服務(wù)器上,且服務(wù)消費端可直接向集群管理服務(wù)器請求服務(wù),以便集群管理服務(wù)器提供與該服務(wù)請求匹配的邏輯服務(wù)器的地址列表給服務(wù)消費端,實現(xiàn)了快速為服務(wù)消費端提供了可選擇的邏輯服務(wù)器,從而使系統(tǒng)業(yè)務(wù)處理速度提高,更加穩(wěn)定,避免了因業(yè)務(wù)處理過慢而堆積,導(dǎo)致系統(tǒng)癱瘓情況發(fā)生。
【附圖說明】
[0007]圖1為本發(fā)明實施例的集群管理系統(tǒng)方法的流程圖。
[0008]圖2為本發(fā)明實施例的集群管理系統(tǒng)的示意圖。
[0009]圖3為本發(fā)明實施例的集群管理系統(tǒng)的功能模塊圖。
【具體實施方式】
[0010]下面將結(jié)合本發(fā)明實施方式中的附圖,對實施方式中的技術(shù)方案進行清楚、完整的描述。
[0011]請參看圖1,本發(fā)明實施例提供一種集群管理方法,其中,邏輯服務(wù)器作為服務(wù)提供者,并向集群管理服務(wù)器注冊自身服務(wù);服務(wù)消費端則向集群管理服務(wù)器請求服務(wù),而集群管理服務(wù)器統(tǒng)籌管理邏輯服務(wù)器和服務(wù)消費端,建立三者之間彼此的通訊,以便為服務(wù)消費端提供與其所請求的服務(wù)相匹配的可選擇的邏輯服務(wù)器的地址列表。該集群管理方法的包括步驟:
[0012]步驟SlOl,邏輯服務(wù)器向集群管理服務(wù)器注冊自身服務(wù)。
[0013]步驟S102,集群管理服務(wù)器接收服務(wù)消費端的服務(wù)請求。
[0014]步驟S103,該集群管理服務(wù)器發(fā)送與該服務(wù)請求相匹配的邏輯服務(wù)器地址列表給所述服務(wù)消費端。具體地,由于邏輯服務(wù)器向集群管理服務(wù)器注冊了其自身的服務(wù),集群管理服務(wù)器中的路由表將新增該邏輯服務(wù)器,該路由表包含所有在線邏輯服務(wù)器的節(jié)點名以及目標地址等,一個節(jié)點名匹配一個邏輯服務(wù)器,因此,集群管理服務(wù)器可根據(jù)路由表中內(nèi)容獲取在線的邏輯服務(wù)器的名稱、端口以及服務(wù)內(nèi)容。當服務(wù)消費端請求服務(wù)時,集群管理服務(wù)器將當前與所請求的服務(wù)相匹配的邏輯服務(wù)器的地址列表發(fā)送給服務(wù)消費端以供服務(wù)消費端選擇。例如,服務(wù)消費端請求通訊錄信息,集群管理服務(wù)器將該時刻所有在線的且是通訊錄服務(wù)的邏輯服務(wù)器的地址列表發(fā)送該服務(wù)請求端以供該服務(wù)請求端選擇。
[0015]步驟S104,該服務(wù)消費端接收該邏輯服務(wù)器地址列表。
[0016]步驟S105,該服務(wù)消費端從該邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器來提供服務(wù)。具體地,服務(wù)消費端可隨機從邏輯服務(wù)的地址列表中選擇邏輯服務(wù)器提供服務(wù)或者根據(jù)邏輯服務(wù)器的當前性能指標從邏輯服務(wù)器地址列表中選擇負載最低的邏輯服務(wù)器來提供服務(wù),該當前性能指標具體表示為邏輯服務(wù)器的當前負載。本實施例子中,優(yōu)選服務(wù)消費端選擇負載最低的邏輯服務(wù)器來提供服務(wù)。
[0017]本實施例中,集群管理服務(wù)器與邏輯服務(wù)器以及服務(wù)消費者之間建立通訊,且邏輯服務(wù)器直接將其自身服務(wù)注冊在集群管理服務(wù)器上,當服務(wù)消費者向集群管理服務(wù)器請求服務(wù)時,集群管理服務(wù)器可以直接為服務(wù)消費端提供與服務(wù)請求相匹配的邏輯服務(wù)器以供服務(wù)消費端選擇,從而實現(xiàn)了快速為服務(wù)消費端提供了可選擇的邏輯服務(wù)器。
[0018]相對于本實施例,進一步的方案為,步驟SlOl之前還包括步驟A,步驟S102之前還包括步驟B和步驟C,該步驟A、步驟B以及步驟C如下所示:
[0019]步驟A,邏輯服務(wù)器讀取預(yù)存的邏輯服務(wù)器配置文件,以便獲取集群管理服務(wù)器的地址以及該邏輯服務(wù)器的服務(wù)信息。具體地,該邏輯服務(wù)器配置文件為該邏輯服務(wù)器預(yù)存的其本身的配置文件,該邏輯服務(wù)器配置文件包含集群管理服務(wù)器的地址以及該邏輯服務(wù)器的服務(wù)信息,該服務(wù)信息包括該邏輯服務(wù)器的名稱、端口以及服務(wù)內(nèi)容。且邏輯服務(wù)器的名稱和端口、服務(wù)內(nèi)容相匹配,以便通過邏輯服務(wù)器的名稱可快速確定邏輯服務(wù)器的服務(wù)類型以及通訊的端口。
[0020]步驟B,服務(wù)消費端讀取預(yù)存的服務(wù)消費端配置文件,以便獲取集群管理服務(wù)器的地址以及需要訂閱的服務(wù)。具體地,該服務(wù)消費端配置文件包括集群管理服務(wù)器的地址以及需要訂閱的服務(wù)的內(nèi)容。
[0021 ]步驟C:服務(wù)消費端發(fā)送服務(wù)請求給集群管理服務(wù)器。
[0022]相對于本實施例,進一步的方案為,步驟SlOl后還包括步驟D以及步驟S103之后還包括步驟E,該步驟D和步驟E如下所示:
[0023]步驟D,邏輯服務(wù)器定時發(fā)送心跳包給集群管理服務(wù)器,以保證該邏輯服務(wù)器與集群管理服務(wù)器之間的連接的可靠性。具體地,本實施例子中,邏輯服務(wù)器通過UDP定時發(fā)送心跳,以便通知集群管理服務(wù)器該邏輯服務(wù)區(qū)是在線狀態(tài)。
[0024]步驟E,服務(wù)消費端定時發(fā)送心跳包給集群管理服務(wù)器,以保證該服務(wù)消費端與集群管理服務(wù)器之間的連接的可靠性。具體地,本實施例子中,服務(wù)消費端也通過UDP定時發(fā)送心跳,以便通知集群管理服務(wù)器該服務(wù)消費端是在線狀態(tài)。
[0025]上述邏輯服務(wù)器以及消費服務(wù)端通過定時發(fā)送心跳包給集群管理服務(wù)器來通知集群管理服務(wù)器其是否在線。而當服務(wù)消費端請求服務(wù)且集群管理服務(wù)器發(fā)送邏輯服務(wù)器的地址列表后,邏輯服務(wù)器可能隨后將上線和下線,導(dǎo)致集群管理服務(wù)器發(fā)送給服務(wù)消費端的邏輯服務(wù)器的地址列表不是當前時刻與服務(wù)請求所匹配的最新的在線邏輯服務(wù)器的地址列表,因此,該集群管理方法還包括步驟F。
[0026]步驟F:集群管理服務(wù)器通過心跳包推送邏輯服務(wù)器的地址列表的變更數(shù)據(jù)給服務(wù)消費端。具體地,當邏輯服務(wù)器因上線和下線導(dǎo)致與服務(wù)請求相匹配的邏輯服務(wù)器地址列表有變動時,集群管理服務(wù)器通過UDP發(fā)送心跳包給服務(wù)消費端。因此,集群管理服務(wù)器在只管理在線的邏輯服務(wù)器且將其地址列表發(fā)送給服務(wù)消費端前提下,隨時將邏輯服務(wù)器的動態(tài)傳達給服務(wù)消費者,為服務(wù)消費端提供了更加可靠的可選擇的邏輯服務(wù)器,可有效的防止服務(wù)消費端選擇下線的邏輯服務(wù)器的情況發(fā)生。
[0027]相對于本實施例,進一步的方案為,該集群管理方法還包括步驟M:
[0028]步驟M:邏輯服務(wù)器和消費服務(wù)端還分別將自身占據(jù)內(nèi)存的調(diào)用次數(shù)以及調(diào)用時間的統(tǒng)計數(shù)據(jù)發(fā)送給公共管理服務(wù)器,以便記錄邏輯服務(wù)器以及消費服務(wù)端的運行狀態(tài)和使用歷史。具體地,公共緩存服務(wù)器將同時與集群管理服務(wù)器、邏輯服務(wù)器以及服務(wù)消費端保持通訊,因此本實施例子中,將邏輯服務(wù)器和消費服務(wù)端占據(jù)內(nèi)存的調(diào)用次數(shù)以及調(diào)用時間的統(tǒng)計數(shù)據(jù)發(fā)送給公共管理服務(wù)器,可便于集群管理服務(wù)器、邏輯服務(wù)器以及服務(wù)消費端均可直接訪問公共緩存服務(wù)器來獲取所需邏輯服務(wù)器以及消費服務(wù)端的運行狀態(tài)和使用歷史相關(guān)數(shù)據(jù)。此外,本實施例子中,邏輯服務(wù)器的當前性能指標存儲在公共緩存服務(wù)器中,因此服務(wù)消費端是直接從公共緩存服務(wù)器中獲取當前性能指標。
[0029]請參看圖2,本發(fā)明實施例提供的一種集群管理系統(tǒng)的示意圖,集群管理系統(tǒng)100包括集群管理服務(wù)器10、與集群管理服務(wù)器10通訊的若干邏輯服務(wù)器20以及也與集群管理服務(wù)器10通訊的若干服務(wù)消費端30。其中,服務(wù)消費端30用于向集群管理服務(wù)器10請求服務(wù),邏輯服務(wù)器20充當服務(wù)提供者,將其自身服務(wù)注冊到集群管理服務(wù)器10上以便為服務(wù)消費端30提供服務(wù);集群管理服務(wù)器10用于統(tǒng)籌管理所有的邏輯服務(wù)器20以及服務(wù)消費端30,建立三者之間彼此的通訊,實現(xiàn)邏輯服務(wù)器20與服務(wù)消費端30之間連通,以便為服務(wù)消費端30提供與所請求的服務(wù)相匹配的可選擇的邏輯服務(wù)器20的地址列表。
[0030]請參看圖3,集群管理服務(wù)器10包括第一接收模塊101以及第一發(fā)送模塊102;邏輯服務(wù)器20包括注冊模塊201;服務(wù)消費端30包括第二接收模塊301以及選擇模塊302。
[0031]邏輯服務(wù)器20充當服務(wù)提供者,將其自身服務(wù)劃分類型,具體地,邏輯服務(wù)器20依據(jù)服務(wù)類型將其劃分為多種類型,例如,可分為通訊錄管理的功能的邏輯服務(wù)器20、離線消息管理邏輯服務(wù)器20等各種類型。
[0032]注冊模塊201用于邏輯服務(wù)器20向集群管理服務(wù)器10注冊自身的服務(wù)。
[0033]第一接收模塊101用于接收邏輯服務(wù)器20的注冊信息以及服務(wù)消費端30的服務(wù)請求。
[0034]第一發(fā)送模塊102用于發(fā)送與服務(wù)消費端30所請求的服務(wù)相匹配的邏輯服務(wù)器地址列表給服務(wù)消費端30。具體地,由于邏輯服務(wù)器20向集群管理服務(wù)器10注冊了其自身的服務(wù),當服務(wù)消費端30請求服務(wù)時,集群管理服務(wù)器10將當前與所請求的服務(wù)相匹配的邏輯服務(wù)器地址列表發(fā)送給服務(wù)消費端30以供服務(wù)消費端30選擇。
[0035]第二接收模塊301用于接收集群管理服務(wù)器10發(fā)送的與服務(wù)請求匹配的邏輯服務(wù)器地址列表。
[0036]選擇模塊302用于從集群管理服務(wù)器10發(fā)送的與服務(wù)請求匹配的該邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器20提供服務(wù)。其中,選擇模塊302可隨機從該邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器20提供服務(wù),再或者選擇模塊302可根據(jù)邏輯服務(wù)器20的當前性能指標從該邏輯服務(wù)器地址列表中選擇負載最低的邏輯服務(wù)器20來提供服務(wù),該當前性能指標用于表示邏輯服務(wù)器30的當前負載。本實施例中,優(yōu)選選擇模塊302選擇負載最低的邏輯服務(wù)器20來提供服務(wù),若選擇的邏輯服務(wù)器20調(diào)用失敗,選擇模塊302還可根據(jù)集群容錯規(guī)則再選擇調(diào)用其他邏輯服務(wù)器20。
[0037]該集群管理系統(tǒng)100利用集群管理服務(wù)器10與邏輯服務(wù)器20和服務(wù)消費端30之間的邏輯關(guān)系,集群管理服務(wù)器10統(tǒng)籌管理邏輯服務(wù)器20以及服務(wù)消費端30,并快速為服務(wù)消費端30匹配邏輯服務(wù)器20來提高服務(wù)。
[0038]相對于本實施例,進一步方案為:邏輯服務(wù)器20還包括第一讀取模塊,第一讀取模塊用于邏輯服務(wù)器20讀取預(yù)存的邏輯服務(wù)器配置文件,以便獲取集群管理服務(wù)器10的地址以及該邏輯服務(wù)器20的服務(wù)信息。其中,該邏輯服務(wù)器配置文件包含集群管理服務(wù)器10的地址以及該邏輯服務(wù)器20的服務(wù)信息,該服務(wù)信息包括該邏輯服務(wù)器20的名稱、端口以及服務(wù)內(nèi)容。其中該邏輯服務(wù)器20的名稱和端口、服務(wù)內(nèi)容相匹配,以便通過邏輯服務(wù)器20的名稱可快速確定邏輯服務(wù)器20的服務(wù)類型以及通訊的端口。
[0039]服務(wù)消費端還包括第二讀取模塊以及第二發(fā)送模塊,其中第二讀取模塊用于服務(wù)消費端30在發(fā)送服務(wù)請求之前讀取預(yù)存的服務(wù)消費端配置文件,以便獲取集群管理服務(wù)器10的地址以及需要訂閱的服務(wù)。該服務(wù)消費端配置文件包括集群管理服務(wù)器10的地址以及需要訂閱的服務(wù)的內(nèi)容;以及第二發(fā)送模塊用于發(fā)送服務(wù)請求給集群管理服務(wù)器10。
[0040]相對于本實施例,進一步方案為:邏輯服務(wù)器20還包括第三發(fā)送模塊,該第三發(fā)明模塊用于定時發(fā)送心跳包給集群管理服務(wù)器10,保證該邏輯服務(wù)器20與集群管理服務(wù)器10之間的連接的可靠性。具體地,本實施方式中,邏輯服務(wù)器20通過UDP定時發(fā)送心跳,以便通知集群管理服務(wù)器10該邏輯服務(wù)區(qū)20是在線狀態(tài)。
[0041]服務(wù)消費端30的第二發(fā)送模塊還用于定時發(fā)送心跳包給集群管理服務(wù)器10,保證該服務(wù)消費端30與集群管理服務(wù)器10之間的連接的可靠性。具體地,本實施方式中,服務(wù)消費端30通過UDP定時發(fā)送心跳,以便通知集群管理服務(wù)器10該服務(wù)消費端30是在線狀態(tài)。
[0042]集群管理服務(wù)器10的第一發(fā)送模塊102還用于推送邏輯服務(wù)器地址列表的變更數(shù)據(jù)給服務(wù)消費端30。具體地,當邏輯服務(wù)器地址列表有變動時,集群管理服務(wù)器10通過UDP發(fā)送心跳包給服務(wù)消費端30。因為當服務(wù)消費端30請求服務(wù)且集群管理服務(wù)器10發(fā)送邏輯服務(wù)器的地址列表后,邏輯服務(wù)器20可能隨后將上線和下線,導(dǎo)致集群管理服務(wù)器10發(fā)送給服務(wù)消費端30的邏輯服務(wù)器的地址列表不是當前時刻與服務(wù)請求所匹配的最新的在線邏輯服務(wù)器地址列表,因此,集群管理服務(wù)器10在只管理在線的邏輯服務(wù)器且將其地址列表發(fā)送給服務(wù)消費端30前提下,隨時將邏輯服務(wù)器20的動態(tài)傳達給服務(wù)消費者,為服務(wù)消費端30提供了更加可靠的可選擇的邏輯服務(wù)器20,可有效的防止服務(wù)消費端30選擇下線的邏輯服務(wù)器20的情況發(fā)生。
[0043]相對于本實施例,進一步方案為:該集群管理系統(tǒng)100還包括與集群管理服務(wù)器10、邏輯服務(wù)器20以及服務(wù)消費端30的均通訊的公共緩存服務(wù)器,公共緩存服務(wù)器用于存儲服務(wù)消費端30以及邏輯服務(wù)器20的運行數(shù)據(jù),因此集群管理服務(wù)器10、邏輯服務(wù)器20以及服務(wù)消費端30均可直接訪問公共緩存服務(wù)器來獲取數(shù)據(jù)。本實施例中,邏輯服務(wù)器20的當前性能指標存儲在公共緩存服務(wù)器中,因此服務(wù)消費端30是直接從公共緩存服務(wù)器中獲取當前性能指標。此外,第三發(fā)送模塊還將通過心跳包發(fā)送邏輯服務(wù)器20在內(nèi)存中累計調(diào)用次數(shù)以及調(diào)用時間的統(tǒng)計數(shù)據(jù)到公共緩存服務(wù)器;第二發(fā)送模塊還將通過心跳包發(fā)送服務(wù)消費端30在內(nèi)存中累計調(diào)用次數(shù)以及調(diào)用時間的統(tǒng)計數(shù)據(jù)到公共緩存服務(wù)器,以便集群管理服務(wù)器10、邏輯服務(wù)器20以及服務(wù)消費端30可更加便捷的獲取所需要的數(shù)據(jù)。
[0044]于其他實施例中,邏輯服務(wù)器20也可充當服務(wù)消費者來請求服務(wù),例如,一個通訊錄管理的邏輯服務(wù)器20可向其他邏輯服務(wù)器20請求非通訊錄的其他服務(wù)。
[0045]上述集群管理方法以及集群管理系統(tǒng),集群管理服務(wù)器可及時處理服務(wù)消費端的服務(wù)請求,且快速地為該服務(wù)消費端的服務(wù)請求匹配邏輯服務(wù)器,此外,集群管理服務(wù)器只為服務(wù)請求端提供在線的邏輯服務(wù)器,從而不在線的邏輯服務(wù)器將不占據(jù)集群管理服務(wù)器的管理空間,提高系統(tǒng)的運行能力以及運行速度,且實現(xiàn)了有序調(diào)配。
[0046]為了使得上述集群管理方法更加有序有效的進行,該集群管理方法及其系統(tǒng)還能將邏輯服務(wù)器因上線和下線導(dǎo)致服務(wù)消費端獲取的邏輯服務(wù)器的地址列表不是最新的列表時,及時反饋邏輯服務(wù)器的地址列表的變更信息給服務(wù)消費端。此外,公共緩存服務(wù)器的存在使得集群管理服務(wù)器、邏輯服務(wù)器以及服務(wù)消費端可更加便捷的獲取所需要的數(shù)據(jù)。
[0047]綜合而言,上述集群管理方法和集群管理系統(tǒng)通過集群管理服務(wù)器的統(tǒng)籌管理,有序的為服務(wù)消費端匹配可供選擇的邏輯服務(wù)器,且非在線的邏輯服務(wù)器不再占據(jù)系統(tǒng)的空間,從而提高了系統(tǒng)的運行速度和系統(tǒng)的穩(wěn)定性。此外,集群管理服務(wù)器及時將邏輯服務(wù)器的變更信息發(fā)送給服務(wù)消費端,為服務(wù)消費端提供了更加可靠的可選擇的邏輯服務(wù)器,可有效的防止服務(wù)消費端選擇下線的邏輯服務(wù)器的情況發(fā)生。
[0048]對所公開實例的上述說明,使得本技術(shù)領(lǐng)域?qū)I(yè)人員能夠?qū)崿F(xiàn)或者使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其他實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點一致的最寬范圍。
【主權(quán)項】
1.一種集群管理方法,其特征在于,包括步驟: 邏輯服務(wù)器向集群管理服務(wù)器注冊自身服務(wù); 所述集群管理服務(wù)器接收服務(wù)消費端的服務(wù)請求; 所述集群管理服務(wù)器發(fā)送與所述服務(wù)請求相匹配的邏輯服務(wù)器地址列表給所述服務(wù)消費端; 所述服務(wù)消費端接收所述邏輯服務(wù)器地址列表;以及 所述服務(wù)消費端從所述邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器來提供服務(wù)。2.如權(quán)利要求1所述集群管理方法,其特征在于,所述集群管理方法包括步驟: 所述邏輯服務(wù)器向集群管理服務(wù)器注冊自身服務(wù)步驟之前,所述邏輯服務(wù)器還讀取預(yù)存的邏輯服務(wù)器配置文件,所述邏輯服務(wù)器配置文件包含所述集群管理服務(wù)器的地址以及所述邏輯服務(wù)器的服務(wù)信息,所述服務(wù)信息包括所述邏輯服務(wù)器的名稱、端口以及服務(wù)內(nèi)容; 所述集群管理服務(wù)器接收服務(wù)消費端的服務(wù)請求步驟之前,所述服務(wù)消費端還讀取預(yù)存的服務(wù)消費端配置文件,所述服務(wù)消費端配置文件包含所述集群管理服務(wù)器的地址以及所述服務(wù)消費端所需要訂閱的服務(wù)內(nèi)容。3.如權(quán)利要求1所述集群管理方法,其特征在于,所述集群管理方法還包括步驟: 所述邏輯服務(wù)器定時發(fā)送心跳包給所述集群管理服務(wù)器; 所述服務(wù)消費端定時發(fā)送心跳包給所述集群管理服務(wù)器; 所述集群管理服務(wù)器通過心跳包發(fā)送與所述服務(wù)請求相匹配的所述邏輯服務(wù)器的變更信息給所述服務(wù)消費端。4.如權(quán)利要求1所述集群管理方法,其特征在于,所述集群管理方法還包括步驟: 所述邏輯服務(wù)器和所述服務(wù)消費端通過心跳包分別發(fā)送各自在內(nèi)存中累計調(diào)用次數(shù)以及調(diào)用時間的統(tǒng)計數(shù)據(jù)到公共緩存服務(wù)器。5.如權(quán)利要求1所述集群管理方法,其特征在于,所述服務(wù)消費端根據(jù)所述邏輯服務(wù)器的所述當前性能指標從所述邏輯服務(wù)器地址列表中選當前負載最低的所述邏輯服務(wù)器來提供服務(wù),所述當前性能指標表示為所述邏輯服務(wù)器的當前負載。6.一種集群管理系統(tǒng),其特征在于,包括集群管理服務(wù)器、若干個與集群管理服務(wù)器通訊的邏輯服務(wù)器以及若干個與集群管理服務(wù)器通訊的服務(wù)消費端,所述邏輯服務(wù)器充當服務(wù)提供者,用于為所述服務(wù)消費端提供服務(wù);所述集群管理服務(wù)器用于統(tǒng)籌管理所述邏輯服務(wù)器以及所述消費服務(wù)端,所述邏輯服務(wù)器包括注冊模塊;所述集群管理服務(wù)器包括第一接收模塊以及第一發(fā)送模塊;所述服務(wù)消費端包括第二接收模塊以及選擇模塊, 所述注冊模塊用于所述邏輯服務(wù)器向所述集群管理服務(wù)器注冊自身服務(wù); 所述第一接收模塊用于所述集群管理服務(wù)器接收所述服務(wù)消費端的服務(wù)請求; 所述第一發(fā)送模塊用于所述集群管理服務(wù)器發(fā)送與所述服務(wù)請求相匹配的邏輯服務(wù)器地址列表給所述服務(wù)消費端; 所述第二接收模塊用于接收所述邏輯服務(wù)器地址列表以及 所述選擇模塊用于所述服務(wù)消費端從所述邏輯服務(wù)器地址列表中選擇邏輯服務(wù)器來提供服務(wù)。7.如權(quán)利要求6所述的集群管理系統(tǒng),其特征在于,所述邏輯服務(wù)器還包括第一讀取模塊以及所述服務(wù)消費端包括第二讀取模塊, 所述第一讀取模塊用于所述邏輯服務(wù)器讀取預(yù)存的邏輯服務(wù)器配置文件,所述邏輯服務(wù)器配置文件包含所述集群管理服務(wù)器的地址以及所述邏輯服務(wù)器的服務(wù)信息,所述服務(wù)信息包括所述邏輯服務(wù)器的名稱、端口以及服務(wù)內(nèi)容; 所述第二讀取模塊用于所述服務(wù)消費端讀取預(yù)存的服務(wù)消費端配置文件,所述服務(wù)消費端配置文件包含所述集群管理服務(wù)器的地址以及所述服務(wù)消費端所需要訂閱的服務(wù)內(nèi)容。8.如權(quán)利要求6所述的集群管理系統(tǒng),其特征在于,所述邏輯服務(wù)器還包括第三發(fā)送模塊以及所述服務(wù)消費端還包括第二發(fā)送模塊, 所述第三發(fā)送模塊用于所述邏輯服務(wù)器定時發(fā)送心跳包給所述集群管理服務(wù)器; 所述第二發(fā)送模塊用于所述服務(wù)消費端定時發(fā)送心跳包給所述集群管理服務(wù)器;所述第一發(fā)送模塊用于所述集群管理服務(wù)器通過心跳包發(fā)送與所述邏輯服務(wù)器地址列表的變更信息給所述服務(wù)消費端。9.如權(quán)利要求6所述的集群管理系統(tǒng),其特征在于,所述集群管理系統(tǒng)還包括與所述集群管理服務(wù)器、所述邏輯服務(wù)器以及所述服務(wù)消費端均通訊的公共緩存服務(wù)器,所述邏輯服務(wù)器還包括第三發(fā)送模塊以及所述服務(wù)消費端還包括第二發(fā)送模塊, 第三發(fā)送模塊用于所述邏輯服務(wù)器通過心跳包發(fā)送其在內(nèi)存中累計調(diào)用次數(shù)以及調(diào)用時間的統(tǒng)計數(shù)據(jù)到所述公共緩存服務(wù)器;以及 第二發(fā)送模塊用于所述服務(wù)消費端通過心跳包發(fā)送其在內(nèi)存中累計調(diào)用次數(shù)以及調(diào)用時間的統(tǒng)計數(shù)據(jù)到所述公共緩存服務(wù)器。10.如權(quán)利要求6所述的集群管理系統(tǒng),其特征在于,所述選擇模塊根據(jù)所述邏輯服務(wù)器的所述當前性能指標從所述邏輯服務(wù)器地址列表中選擇當前負載最低的所述邏輯服務(wù)器來提供服務(wù),所述當前性能指標表示為所述邏輯服務(wù)器的當前負載。
【文檔編號】H04L29/08GK105827687SQ201510793885
【公開日】2016年8月3日
【申請日】2015年11月17日
【發(fā)明人】周杜錦, 覃政仁, 陳康術(shù)
【申請人】廣東億迅科技有限公司