專(zhuān)利名稱(chēng)::一種分布式服務(wù)系統(tǒng)的服務(wù)提供方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種計(jì)算機(jī)數(shù)據(jù)服務(wù)提供方法,尤其涉及一種用于分布式服務(wù)系統(tǒng)的服務(wù)提供方法。
背景技術(shù):
:分布式服務(wù)系統(tǒng)就是將服務(wù)系統(tǒng)的功能拆分,將各個(gè)功能放在幾個(gè)獨(dú)立的組件上,通過(guò)這幾個(gè)組件之間的相互協(xié)作,來(lái)完成整個(gè)系統(tǒng)的功能。在這里,幾個(gè)獨(dú)立的組件可以是指幾個(gè)獨(dú)立的CPU,但更通常的是指網(wǎng)絡(luò)上的幾臺(tái)計(jì)算機(jī)。采用分布式系統(tǒng),最大的優(yōu)點(diǎn)表現(xiàn)在系統(tǒng)的處理速度上。系統(tǒng)的各個(gè)功能放在幾個(gè)獨(dú)立的組件上,各部分的組件完成自己的功能塊,以并行的方式協(xié)同工作。分布式服務(wù)系統(tǒng)另外的優(yōu)點(diǎn)還在于個(gè)功能模塊分開(kāi),便于管理、維護(hù)和更新,服務(wù)器的管理維護(hù)在大型的服務(wù)系統(tǒng)中也是相當(dāng)重要的。一個(gè)典型的分布式服務(wù)系統(tǒng)大致包括以下幾部分表示層,主要負(fù)責(zé)業(yè)務(wù)層與用戶之間的交流接口和數(shù)據(jù)傳遞工作,是唯一一個(gè)直接與用戶打交道的部分;業(yè)務(wù)層,是分布式服務(wù)系統(tǒng)的心臟,最主要的數(shù)據(jù)處理工作和服務(wù)就由這一部分完成和提供;數(shù)據(jù)源,主要用于存儲(chǔ)數(shù)據(jù)。然而,和運(yùn)行在一臺(tái)機(jī)器中的服務(wù)提供者和使用者相比,分布式系統(tǒng)在服務(wù)提供方面具有大得多的復(fù)雜性。造成這種復(fù)雜性的原因主要有以下幾個(gè)方面1、由于系統(tǒng)分布,服務(wù)器程序和客戶程序很可能不是由同一個(gè)開(kāi)發(fā)團(tuán)隊(duì)開(kāi)發(fā),這就造成服務(wù)提供者和客戶之間的接口不規(guī)范,導(dǎo)致互操作困難,當(dāng)涉及多個(gè)服務(wù)提供者和客戶時(shí),情況就會(huì)變得更加糟糕。2、正是由于上面所述的不規(guī)范性,造成服務(wù)的擴(kuò)展困難。當(dāng)由于需求的變化需要增加新的服務(wù)或者對(duì)現(xiàn)有服務(wù)進(jìn)行更改時(shí),就會(huì)造成嚴(yán)重的連鎖反應(yīng)那些和改動(dòng)無(wú)關(guān)的客戶(或者服務(wù)器)也不得不進(jìn)行重新的構(gòu)建和部署。當(dāng)系統(tǒng)涉及隸屬于多個(gè)不同公司的開(kāi)發(fā)團(tuán)隊(duì)時(shí),這種連鎖反應(yīng)會(huì)造成巨大的不必要的浪費(fèi)。3、部署是分布式服務(wù)中的一項(xiàng)重要工作,這項(xiàng)工作的難度直接影響到分布式服務(wù)發(fā)布和升級(jí)的工作量。遺憾的是,現(xiàn)在有很多服務(wù)提供者在需要升級(jí)或者提供新的服務(wù)時(shí),都不得不重新構(gòu)建并重啟整個(gè)系統(tǒng),這不僅嚴(yán)重影響了服務(wù)的可用性,并且也給升級(jí)工作帶來(lái)了很大的工作量。正是由于上面的這些原因,使得當(dāng)前很多分布式系統(tǒng)在服務(wù)提供方面非常的不一致、難以擴(kuò)展和部署。而開(kāi)發(fā)這些系統(tǒng)的公司和團(tuán)體也不得不耗費(fèi)大量的不必要的資金和精力。
發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問(wèn)題在于提供一種分布式服務(wù)系統(tǒng)的服務(wù)提供方法,克服現(xiàn)有技術(shù)中存在的訪問(wèn)不一致,難于擴(kuò)展,以及由于服務(wù)的添加或者更改造成的巨大連鎖反應(yīng)等問(wèn)題。本發(fā)明提供一種分布式服務(wù)系統(tǒng)的服務(wù)提供方法,包括如下步驟確定要使用的擴(kuò)展接口、公共管理服務(wù)以及要提供的具體服務(wù);由所述具體服務(wù)實(shí)現(xiàn)所述擴(kuò)展接口,并確定各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn);根據(jù)所述各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn),分別生成描述各服務(wù)的配置文件;系統(tǒng)通過(guò)讀取并解析所述配置文件,分別加載各服務(wù)的主實(shí)現(xiàn);發(fā)布所述公共管理服務(wù),并將要提供的具體服務(wù)在公共管理服務(wù)上進(jìn)行注冊(cè)發(fā)布。優(yōu)選的,本發(fā)明進(jìn)一步包括如下步驟公共管理服務(wù)根據(jù)用戶指示確定用戶需要獲取的具體服務(wù)名稱(chēng);公共管理服務(wù)根據(jù)具體服務(wù)名稱(chēng)獲取該具體服務(wù)實(shí)體提供給用戶使用。其中,所述通過(guò)擴(kuò)展接口實(shí)現(xiàn)服務(wù),并確定服務(wù)名稱(chēng)與服務(wù)主實(shí)現(xiàn)步驟,進(jìn)一步包括確定該服務(wù)的實(shí)現(xiàn)策略的步驟,包括如下步驟判斷并確定該服務(wù)需要分解為不同的實(shí)現(xiàn)策略;分解問(wèn)題領(lǐng)域,解析出需要實(shí)現(xiàn)的策略組件;確定策略與服務(wù)之間的協(xié)作方式;實(shí)現(xiàn)出與服務(wù)相協(xié)作的策略組件。其中,所述生成描述各服務(wù)的配置文件步驟,所述配置文件進(jìn)一步包括信息組成服務(wù)的策略名稱(chēng)、策略實(shí)現(xiàn)組件,以及策略在服務(wù)實(shí)現(xiàn)中的組合方式。其中,所述加載步驟,進(jìn)一步包括如下步驟判斷并確定所述配置文件中含有策略配置信息;解析出配置文件中的策略實(shí)現(xiàn)及其組合方式,并對(duì)其進(jìn)行加載;根據(jù)策略的組合方式,將策略實(shí)現(xiàn)組合如服務(wù)主實(shí)現(xiàn)中。采用本發(fā)明所述方法,與現(xiàn)有技術(shù)相比,提供了一種高效,便捷,一致,并且易于擴(kuò)展的分布式服務(wù)提供方法,采用配置文件的方式方便對(duì)服務(wù)的組織,服務(wù)的配置發(fā)布不再采用硬編碼的方式,而是采用動(dòng)態(tài)加載和控制反轉(zhuǎn)(InversionofControl)技術(shù)使得服務(wù)的表示和實(shí)現(xiàn)分離,從而可以很方便地實(shí)現(xiàn)服務(wù)的多樣性。運(yùn)用這種方法,可以極大地節(jié)省服務(wù)開(kāi)發(fā)的時(shí)間,可以幫助分布式服務(wù)系統(tǒng)構(gòu)建底層服務(wù)管理框架。由于控制反轉(zhuǎn)的引入,應(yīng)用對(duì)框架不存在直接依賴(lài),提高了服務(wù)組件的可測(cè)試性,本發(fā)明提供的配置文件組織方式和服務(wù)訪問(wèn)方式還可以根據(jù)實(shí)際需要去進(jìn)行擴(kuò)展,應(yīng)用范圍更廣,實(shí)現(xiàn)了服務(wù)的可擴(kuò)展性,訪問(wèn)的一致性,服務(wù)實(shí)現(xiàn)的多樣性,不同類(lèi)型服務(wù)的易配置和易添加性以及動(dòng)態(tài)加載性。本發(fā)明可以提供高度模塊化且可動(dòng)態(tài)、增量擴(kuò)展的服務(wù),特別適合于電信設(shè)備管理中EMS(網(wǎng)元管理系統(tǒng))和NMS(網(wǎng)絡(luò)管理系統(tǒng))之間的服務(wù)提供方式。圖1為本發(fā)明所述的分布式服務(wù)系統(tǒng)的服務(wù)提供方法流程示意圖;圖2為本發(fā)明所述的服務(wù)實(shí)現(xiàn)及配置文件生成過(guò)程示意圖;圖3為本發(fā)明所述的服務(wù)加載與發(fā)布流程示意圖;圖4為為本發(fā)明所述的用戶使用服務(wù)時(shí)的流程示意圖。具體實(shí)施例方式如圖1所示,為本發(fā)明所述的分布式服務(wù)提供方法流程示意圖。首先,確定要使用的擴(kuò)展接口、公共管理服務(wù)以及要提供的具體服務(wù)(步驟101);由所述具體服務(wù)實(shí)現(xiàn)所述擴(kuò)展接口,并確定各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn)(步驟102);根據(jù)所述各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn),分別生成描述各服務(wù)的配置文件(步驟103);系統(tǒng)通過(guò)讀取并解析所述配置文件,分別加載各服務(wù)的主實(shí)現(xiàn)(步驟104);發(fā)布所述公共管理服務(wù),并將要提供的具體服務(wù)在公共管理服務(wù)上進(jìn)行注冊(cè)發(fā)布(步驟105)。此外,如果具體服務(wù)還需要不同的實(shí)現(xiàn)策略,那么,本發(fā)明還可以進(jìn)而將不同的策略及其組合方式進(jìn)一步的描述入配置文件,并在服務(wù)加載時(shí),通過(guò)讀取和解析配置文件,動(dòng)態(tài)的將不同策略組合入服務(wù)主實(shí)現(xiàn)中。本發(fā)明所使用的擴(kuò)展接口,是一種運(yùn)用在框架中的常用技術(shù)。該技術(shù)可以使得接口的功能變得可擴(kuò)展而不會(huì)影響到已有的使用者。為了達(dá)到這個(gè)目的,擴(kuò)展接口技術(shù)提供了一個(gè)高層的、一致的抽象服務(wù)接口,該接口中定義了用于服務(wù)擴(kuò)展所需要的方法,比如服務(wù)查詢(xún)等,由具體的服務(wù)實(shí)現(xiàn)該接口。本發(fā)明所述的具體服務(wù),其在實(shí)現(xiàn)時(shí)必須要繼承上述確定好的擴(kuò)展接口。其中,公共管理服務(wù)為系統(tǒng)的一項(xiàng)基本服務(wù),在啟動(dòng)時(shí)加載和發(fā)布,所有其他服務(wù)都通過(guò)向公共管理服務(wù)注冊(cè)的方式進(jìn)行發(fā)布。本發(fā)明所述的描述服務(wù)的配置文件采用XML格式,其中的信息可以具體涉及服務(wù)名稱(chēng),服務(wù)實(shí)現(xiàn)主實(shí)現(xiàn)組件,組成服務(wù)的策略名稱(chēng)和策略實(shí)現(xiàn)組件,以及策略在服務(wù)實(shí)現(xiàn)中的組合方式。使用服務(wù)描述的配置文件,系統(tǒng)可以在運(yùn)行時(shí)動(dòng)態(tài)地加載并根據(jù)策略名稱(chēng)、組合方式等靈活地組裝服務(wù),從而可以在對(duì)系統(tǒng)其他部分沒(méi)有任何影響的情況下,擴(kuò)展和改變服務(wù)的內(nèi)容。所述配置文件的描述格式舉例如下<servicereg><servicename="sample"imp="sampleServiceImp"><strategyname="strategyl"imp="strategylImp"means="setStrategyl"/><strategyname="strategy2"imp="strategy2Imp"means="setStrategy2"/></service></servicereg>優(yōu)選的,在生成配置文件后,可以把具體的服務(wù)、策略實(shí)現(xiàn)以及對(duì)應(yīng)的配置文件,復(fù)制到系統(tǒng)指定的目錄下,為服務(wù)的加載和啟動(dòng)做準(zhǔn)備。系統(tǒng)加載、啟動(dòng)并發(fā)布服務(wù)時(shí),系統(tǒng)在配置目錄讀取服務(wù)配置文件,采用動(dòng)態(tài)加載和控制反轉(zhuǎn)(InversionOfControl)技術(shù)來(lái)完成服務(wù)的加載、組裝,并通過(guò)把服務(wù)注冊(cè)到公共管理服務(wù)的方式發(fā)布服務(wù)??刂品崔D(zhuǎn)是這樣一種技術(shù),它可以在運(yùn)行時(shí)動(dòng)態(tài)、靈活地建立起組件之間的依賴(lài)關(guān)系,而組件本身卻無(wú)需知曉和其建立起關(guān)系的其他組件的細(xì)節(jié)。這樣就可以使得組件的開(kāi)發(fā)者集中精力于組件本身。當(dāng)客戶使用服務(wù),客戶可以使用一個(gè)統(tǒng)一的訪問(wèn)點(diǎn)去獲取公共的管理服務(wù)。通過(guò)該服務(wù),客戶可以通過(guò)服務(wù)名稱(chēng)查詢(xún)自己感興趣的具體服務(wù),如果服務(wù)存在,就可以獲取并使用該服務(wù)了。如圖2所示,為本發(fā)明所述的服務(wù)實(shí)現(xiàn)及配置文件生成過(guò)程示意圖。首先,由具體的服務(wù)實(shí)現(xiàn)去擴(kuò)展事先定義的擴(kuò)展接口,也就是實(shí)現(xiàn)服務(wù)實(shí)現(xiàn),并確定出服務(wù)名稱(chēng)(步驟201);然后,判斷服務(wù)是否需要分解為不同的實(shí)現(xiàn)策略(步驟202),若步驟202的判斷為假,跳至步驟206;若步驟202的判斷為真,則描述服務(wù)實(shí)現(xiàn)策略(步驟203),就是分解問(wèn)題領(lǐng)域,解析出需要實(shí)現(xiàn)的策略組件;描述服務(wù)策略組合方式(步驟204),就是確定策略和服務(wù)之間的協(xié)作方式;實(shí)現(xiàn)服務(wù)實(shí)現(xiàn)策略(步驟205),就是實(shí)現(xiàn)出與服務(wù)協(xié)作的策略組件;生成用于服務(wù)描述的配置文件(步驟206),就是將上面分析的服務(wù)名稱(chēng),服務(wù)實(shí)現(xiàn)組件,組成服務(wù)的策略名稱(chēng)和策略實(shí)現(xiàn)組件,以及策略在服務(wù)實(shí)現(xiàn)中的組合方式描述在在配置文件中。如圖3所示,為本發(fā)明所述的服務(wù)加載與發(fā)布流程示意圖。首先,觸發(fā)服務(wù)加載動(dòng)作(步驟301);然后,讀取并解析服務(wù)配置文件(步驟302);加載服務(wù)主實(shí)現(xiàn),對(duì)從文件中解析出的服務(wù)主實(shí)現(xiàn)組件,動(dòng)態(tài)加載(步驟303);判斷服務(wù)配置文件中是否有策略配置,就是看服務(wù)配置文件中是否有對(duì)服務(wù)主實(shí)現(xiàn)的策略組件配置(步驟304);如果步驟304判斷為假,則轉(zhuǎn)步驟307;如果步驟304判斷為真,則分析并加載策略實(shí)現(xiàn)(步驟305),就是解析出配置文件中的策略組合方式并動(dòng)態(tài)加載策略實(shí)現(xiàn)組件;再把策略實(shí)現(xiàn)組合進(jìn)服務(wù)實(shí)現(xiàn)主體(步驟306),根據(jù)步驟305解析出的策略組合方式,把策略實(shí)現(xiàn)組合進(jìn)服務(wù)實(shí)現(xiàn)主體;最后把服務(wù)實(shí)現(xiàn)注冊(cè)到公共管理服務(wù)中(步驟307),公共管理服務(wù)在系統(tǒng)啟動(dòng)時(shí)發(fā)布,所有的其他服務(wù)通過(guò)在公共管理服務(wù)上注冊(cè)的方式發(fā)布。如圖4所示,為本發(fā)明所述的用戶使用服務(wù)時(shí)的流程示意圖。首先,客戶獲取公共管理服務(wù)(步驟401);然后,客戶告知公共管理服務(wù)自己想獲取的具體服務(wù)名稱(chēng)(步驟402);然后,客戶使用公共管理服務(wù)獲取具體服務(wù)實(shí)體(步驟403);最后,客戶使用具體服務(wù)(步驟404)。下面用JAVA語(yǔ)言實(shí)現(xiàn)的一個(gè)例子來(lái)說(shuō)明本發(fā)明,該例子中采用CORBA作為分布式對(duì)象的基礎(chǔ)平臺(tái)。首先確定一個(gè)擴(kuò)展接口,在本例中,這個(gè)擴(kuò)展接口是一個(gè)退化接口interfaceCommService{};然后我們?cè)俅_定一個(gè)公共管理服務(wù)對(duì)象interfaceServiceMng{CommServicegetService(instringservname);};然后再確定一個(gè)要實(shí)現(xiàn)的服務(wù),例子采用最簡(jiǎn)單的HelloWorld樣例interfaceHelloworldService::CommService{voidsayHello();};上述過(guò)程可以采用IDL語(yǔ)言進(jìn)行描述,IDL是用于CORBA協(xié)議的接口定義語(yǔ)言,與此相似的,如果采用其他的協(xié)議,可是使用其他的定義語(yǔ)言來(lái)完成定義。進(jìn)一步,分析該服務(wù)實(shí)現(xiàn)中是否需要不同的實(shí)現(xiàn)策略,例如在本例的服務(wù)中,可以采用不同的語(yǔ)言策略。對(duì)中文來(lái)說(shuō),要說(shuō)“世界,你好!”,對(duì)英文來(lái)說(shuō),要說(shuō)“HelloWorld!”,所以,需要兩種不同的語(yǔ)言策略。下面是這兩種策略的具體實(shí)現(xiàn)。publicinterfaceHelloWorld{publicStringgetHello();}PublicclassEnglishHelloworldimplementsHelloWorld{publicStringgetHello(){return“HelloWorld!";}}publicclassChineseHelloWorldimplementsHelloWorld{publicStringgetHello(){return"世界,你好!";}}接著,實(shí)現(xiàn)服務(wù),在該服務(wù)實(shí)現(xiàn)中,確定了策略的組合方式。publicclassHelloworldServiceImplextendsHelloworldServicePOA{privateORBorb=null;privateHelloWorldhello;publicvoidsetORBEnv(ORBorb){this.orb=orb;}publicvoidsayHello(){System.out.println(hello.getHello());}PublicvoidsetHello(HelloWorldhelloworld){this.hello=helloworld;}}接下來(lái),生成描述該服務(wù)的配置文件,對(duì)于英文來(lái)說(shuō)如下<servicereg><servicename="HelloWorld"imp="HelloworldServiceImpl"><strategyname="language"imp="EnglishHelloworld"means="setHello"/></service></servicereg>對(duì)于中文來(lái)說(shuō)如下<servicereg><servicename="HelloWorld"imp="HelloworldServiceImpl"><strategyname="language"imp="ChineseHelloWorld"means="setHello"/></service></servicereg>對(duì)于本例來(lái)說(shuō),公共管理服務(wù)的實(shí)現(xiàn)如下publicclassServiceMngImplextendsServiceMngPOA{publicCommServicegetService(Stringservname){returnservices.getservname);}publicvoidregisterService(Stringname,CommServicesrv){services_.put(name,srv);}privateHashtableservices_=newHashtable();}系統(tǒng)在加載HelloWorld服務(wù)時(shí),會(huì)讀取并分析HelloWorld服務(wù)的配置文件。首先動(dòng)態(tài)加載該服務(wù)的主實(shí)現(xiàn)HelloworldServiceImpl,然后分析并加載相應(yīng)的策略,并根據(jù)所配置的組合手段把策略組合進(jìn)服務(wù)實(shí)現(xiàn)中,并通過(guò)調(diào)用公共管理服務(wù)ServiceMngImpl的registerService方法把自己發(fā)布出去??蛻粢L問(wèn)HelloWorld服務(wù)時(shí),首先獲得CORBA的命名服務(wù),然后獲得公共管理服務(wù)ServiceMngImpl,調(diào)用ServiceMngImpl的getService(“HelloWorld”)方法獲得HelloWorld服務(wù)。權(quán)利要求1.一種分布式服務(wù)系統(tǒng)的服務(wù)提供方法,其特征在于,包括如下步驟確定要使用的擴(kuò)展接口、公共管理服務(wù)以及要提供的具體服務(wù);由所述具體服務(wù)實(shí)現(xiàn)所述擴(kuò)展接口,并確定各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn);根據(jù)所述各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn),分別生成描述各服務(wù)的配置文件;系統(tǒng)通過(guò)讀取并解析所述配置文件,分別加載各服務(wù)的主實(shí)現(xiàn);發(fā)布所述公共管理服務(wù),并將要提供的具體服務(wù)在公共管理服務(wù)上進(jìn)行注冊(cè)發(fā)布。2.如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括如下步驟公共管理服務(wù)根據(jù)用戶指示確定用戶需要獲取的具體服務(wù)名稱(chēng);公共管理服務(wù)根據(jù)具體服務(wù)名稱(chēng)獲取該具體服務(wù)實(shí)體提供給用戶使用。3.如權(quán)利要求1所述的方法,其特征在于,所述通過(guò)擴(kuò)展接口實(shí)現(xiàn)服務(wù),并確定服務(wù)名稱(chēng)與服務(wù)主實(shí)現(xiàn)步驟,進(jìn)一步包括確定該服務(wù)的實(shí)現(xiàn)策略的步驟,包括判斷并確定該服務(wù)需要分解為不同的實(shí)現(xiàn)策略;分解問(wèn)題領(lǐng)域,解析出需要實(shí)現(xiàn)的策略組件;確定策略與服務(wù)之間的協(xié)作方式;實(shí)現(xiàn)出與服務(wù)相協(xié)作的策略組件。4.如權(quán)利要求3所述的方法,其特征在于,所述生成描述各服務(wù)的配置文件步驟,所述配置文件進(jìn)一步包括信息組成服務(wù)的策略名稱(chēng)、策略實(shí)現(xiàn)組件,以及策略在服務(wù)實(shí)現(xiàn)中的組合方式。5.如權(quán)利要求1所述的方法,其特征在于,所述生成描述各服務(wù)的配置文件步驟后,進(jìn)一步包括步驟將具體的服務(wù)實(shí)現(xiàn)以及對(duì)應(yīng)的配置文件復(fù)制到系統(tǒng)指定的目錄下,為加載做準(zhǔn)備。6.如權(quán)利要求4所述的方法,其特征在于,所述生成描述各服務(wù)的配置文件步驟后,進(jìn)一步包括步驟將具體的服務(wù)、策略實(shí)現(xiàn)以及對(duì)應(yīng)的配置文件復(fù)制到系統(tǒng)指定的目錄下。7.如權(quán)利要求4所述的方法,其特征在于,所述加載步驟,進(jìn)一步包括如下步驟判斷并確定所述配置文件中含有策略配置信息;解析出配置文件中的策略實(shí)現(xiàn)及其組合方式,并對(duì)其進(jìn)行加載;根據(jù)策略的組合方式,將策略實(shí)現(xiàn)組合如服務(wù)主實(shí)現(xiàn)中。8.如權(quán)利要求1所述的方法,其特征在于,所述加載步驟中,使用控制反轉(zhuǎn)技術(shù)來(lái)建立起組件之間的依賴(lài)關(guān)系。9.如權(quán)利要求1或4所述的方法,其特征在于,所述的配置文件采用XML格式文件描述。全文摘要本發(fā)明提供一種分布式服務(wù)系統(tǒng)的服務(wù)提供方法,首先確定要使用的擴(kuò)展接口、公共管理服務(wù)以及要提供的具體服務(wù);然后由所述具體服務(wù)實(shí)現(xiàn)所述擴(kuò)展接口,并確定各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn);再根據(jù)所述各服務(wù)的名稱(chēng)與服務(wù)主實(shí)現(xiàn),分別生成描述各服務(wù)的配置文件;系統(tǒng)通過(guò)讀取并解析所述配置文件,分別加載各服務(wù)的主實(shí)現(xiàn);發(fā)布所述公共管理服務(wù),并將要提供的具體服務(wù)在公共管理服務(wù)上進(jìn)行注冊(cè)發(fā)布。本發(fā)明克服現(xiàn)有技術(shù)中存在的訪問(wèn)不一致,難于擴(kuò)展,以及由于服務(wù)的添加或者更改造成的巨大連鎖反應(yīng)等問(wèn)題。文檔編號(hào)G06F9/46GK1916856SQ200510090749公開(kāi)日2007年2月21日申請(qǐng)日期2005年8月15日優(yōu)先權(quán)日2005年8月15日發(fā)明者孫鳴申請(qǐng)人:中興通訊股份有限公司