專利名稱:服務(wù)提供裝置、服務(wù)提供系統(tǒng)、用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法以及計算機程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及服務(wù)提供裝置、服務(wù)提供系統(tǒng)、用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法以及計算機程序,并且更具體而言,本發(fā)明涉及多重地提供多種版本服務(wù)的服務(wù)提供裝置、服務(wù)提供系統(tǒng)、用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法以及計算機程序。
背景技術(shù):
在近些年來,使用軟件即服務(wù)(SaM)/應(yīng)用服務(wù)提供商(ASP)的服務(wù)提供模型日益得到關(guān)注,其中MaS/ASP在單個平臺上向多個用戶提供各種服務(wù)。作為該模式的典型的服務(wù)有 Salesforce. com(http://www. salesforce. com/jp/)。SaaS/ASP 類型的服務(wù)釋放特定應(yīng)用程序接口(API)以允許用戶使用利用了諸如簡單對象訪問協(xié)議(SOAP)和超文本傳輸協(xié)議(HTTP)之類的協(xié)議的功能。利用專利文獻1(日本專利申請案特許公開第2008-123183號)中公開的系統(tǒng), ^aS類型的服務(wù)以軟件的功能為單位提供服務(wù),以使用用戶為每次使用所需要的最少服務(wù)。整體而言,該服務(wù)無規(guī)律地更新為新版本以調(diào)錯并且改善功能,并且改變、添加并刪除單個API和由該API實現(xiàn)的功能。作為與該服務(wù)更新相關(guān)的技術(shù),專利文獻2(日本專利申請案特許公開第 2006-011801號)中公開了用于將更新模塊自動更新為最新版本的方法。然而,服務(wù)通常持續(xù)地更新并且在專利文獻1中公開的技術(shù)中并非簡單地存在新版本和舊版本這兩種類型, 而是通常存在最新版本和多個舊版本(如多個版本VI. 0、V1. 0UV1. 12和V2. 0),并且因此有必要對一部分用戶繼續(xù)提供舊版本服務(wù)。除了需要持續(xù)提供多個版本服務(wù)之外,當(dāng)服務(wù)更新時大部分MaS/ASP類型的服務(wù)需要繼續(xù)提供服務(wù)。因此,現(xiàn)有ASP提供商已采用一種繼續(xù)舊版本服務(wù)的方法,使用由 VMWare (注冊商標)或Xen(注冊商標)所代表的虛擬技術(shù)向另一個服務(wù)器硬件或虛擬操作系統(tǒng)(OS)部署新版本服務(wù)(這些服務(wù)在該虛擬技術(shù)上進行操作),并且切換到新版本。 并且,通過為不能企及新版本的API或功能的部分用戶部分維持原有提供舊版本服務(wù)的硬件,API提供商繼續(xù)提供舊版本服務(wù)。圖19示出了該情況中的切換的示例。用戶群3 (Ul)使用由VI. 00版本服務(wù)提供裝置群10通過負載分發(fā)器7所提供的服務(wù)。在該情況中,負載分發(fā)器7具有向該服務(wù)提供裝置群10中的服務(wù)提供裝置11和12適當(dāng)?shù)胤职l(fā)來自多個用戶3的多個請求的功能。當(dāng)在請求接收/響應(yīng)單元101中接收到來自用戶的請求時,服務(wù)提供裝置11從加載器102獲得處理所需的對象。加載器102讀取類群103,在該類群中在將服務(wù)的部署加載到加載器102 之后實現(xiàn)VI. 00服務(wù)處理。加載器102然后基于類群103生成處理所需的對象,并且向請求接收/響應(yīng)單元101返回該對象。當(dāng)處理完成時,請求接收/響應(yīng)單元101向用戶3返回結(jié)果作為響應(yīng)。
此外,為了將該服務(wù)更新為VI. 01版本,另外預(yù)備了 VI. 01版本的服務(wù)提供裝置群 15。在該服務(wù)提供裝置群15的服務(wù)提供裝置16和17中,請求接收/響應(yīng)單元101和加載器102與服務(wù)提供裝置群10中的那些相同。其唯一區(qū)別在于類群153,該類群153實現(xiàn) VI. 01服務(wù)的處理,并且被讀取并且加載到加載器102。然后,以適當(dāng)?shù)亩〞r改變負載分發(fā)器7的設(shè)置,切斷服務(wù)提供裝置群10的到VI. 00 版本的連接,并且向該VI. 01版本服務(wù)提供裝置群15中的服務(wù)提供裝置16和17分配來自用戶群3的請求。負載分發(fā)器7分配來自用戶3中所包括的用戶群U2的請求,用戶群U2 繼續(xù)對VI. 00版本服務(wù)提供裝置群10使用VI. 00版本服務(wù)。然而,舊版本的使用通常趨于減少,因此管理員適當(dāng)?shù)厝コ?wù)提供裝置群10中的VI. 00版本服務(wù)提供裝置或者將服務(wù)提供裝置轉(zhuǎn)換到VI. 01版本,從而導(dǎo)致舊版本的服務(wù)提供裝置群10衰退。在以上多重地管理多種版本的方法中,部署了服務(wù)的公共部分,同時部署了多個服務(wù),在該多個服務(wù)中大部分服務(wù)彼此相同并且小部分服務(wù)彼此不同。例如,即使僅更新了 VI. 00服務(wù)類群103的一部分類,VI. 01服務(wù)類群153也需要讀取未被更新的公共部分。與這些方法不同,專利文獻3 (日本專利申請案特許公開第2003-337702號)公開了用于改變高度模塊化的軟件的一部分并且在不停止整個軟件的情況下再次部署軟件的系統(tǒng)的示例,以作為用于改為僅更新該服務(wù)的必要部分而非在服務(wù)更新之后準備整個服務(wù)的副本的現(xiàn)有技術(shù)。此外,專利文獻4(日本專利申請案特許公開第2008-165377號)中公開了使用這樣一種配置的系統(tǒng),該配置在執(zhí)行一個應(yīng)用時優(yōu)化用于管理文件系統(tǒng)上的多個庫的版本的方法。該系統(tǒng)使得能夠使用單個系統(tǒng)上的單個庫的不同版本,并且通過即使在更新了軟件包的版本之后仍然備份舊版本的程序,以允許將該軟件包降級到以前的舊版本。
專利文獻專利文獻1 專利文獻2 專利文獻3 專利文獻4
日本專利申請案特許公開第2008-123183號日本專利申請案特許公開第2006-011801號日本專利申請案特許公開第2003-337702號日本專利申請案特許公開第2008-165377號
發(fā)明內(nèi)容
順便說,如上所述,利用MaS/ASP類型的服務(wù),有必要根據(jù)服務(wù)請求源的用戶的要求,多重地提供多種版本服務(wù)。在以上文獻中公開的系統(tǒng)中,服務(wù)器側(cè)(如ASP)通過執(zhí)行應(yīng)用并且向用戶返回結(jié)果而不提供服務(wù),并且終端側(cè)執(zhí)行應(yīng)用并且不需要同時執(zhí)行相同應(yīng)用的多個版本,并且因此,如果將以上文獻的技術(shù)應(yīng)用于服務(wù)器并且同時執(zhí)行多個版本的應(yīng)用,那么就有必要通過為每個版本設(shè)置適當(dāng)?shù)膾燧d點來獨立地發(fā)起應(yīng)用。在該情況中,在不同版本應(yīng)用中所公共的庫將被冗余地讀取到存儲器上,并且因此存在存儲器使用容量增加并且應(yīng)用更大量負載的問題。因此,本發(fā)明的一個目的在于提供這樣一種服務(wù)提供裝置、系統(tǒng)、方法以及程序, 他們可以提高為了盡可能多地繼續(xù)提供舊版本的服務(wù)所需要的計算器資源的效率,并且根據(jù)服務(wù)請求源的要求多重地提供多種版本服務(wù)(這就是以上任務(wù))。
根據(jù)本發(fā)明,提供了一種服務(wù)提供裝置,包括版本信息存儲單元,在其中存儲將要提供給每個用戶的服務(wù)以及該服務(wù)的版本信息,該服務(wù)和該版本信息彼此相關(guān)聯(lián);默認類群存儲單元,在其中存儲將要提供給該用戶的該服務(wù)中最舊版本的默認類群;更新版本專用類群存儲單元,其存儲用于在該最舊版本之后更新的各個版本各自的更新版本專用類群,該更新版本專用類群包括與該默認類群具有區(qū)別的差分類群;默認加載單元,其讀出并且執(zhí)行在該默認類群存儲單元中存儲的該默認類群;更新版本專用差分加載單元,其被提供給每個該更新版本專用類群并且其讀出并且執(zhí)行在該更新版本專用類群存儲單元中存儲的每個該更新版本專用類群;接收單元,其從該用戶接收用于該服務(wù)的使用的請求;指定單元,其參考該版本信息存儲單元,以指定適合于從其接收到該請求的用戶的版本;服務(wù)對象管理單元,其通過使用該默認加載單元和與該更新版本專用類群的該指定版本相關(guān)聯(lián)的該更新版本專用差分加載單元,生成適合于該用戶的該指定版本的服務(wù)對象并且執(zhí)行處理;以及提供單元,其根據(jù)執(zhí)行該處理的結(jié)果,向該用戶提供與該請求相匹配的服務(wù)。根據(jù)本發(fā)明,提供了一種服務(wù)提供系統(tǒng),包括多個上述服務(wù)提供裝置;以及負載分發(fā)裝置,其根據(jù)該多個服務(wù)提供裝置的負載狀態(tài),確定用于響應(yīng)于用戶的請求來提供服務(wù)的服務(wù)提供裝置,并且指派該服務(wù)提供裝置,并且該多個服務(wù)提供裝置在該默認類群存儲單元中存儲該默認類群的相同版本,從而向該用戶均等地提供使用中所應(yīng)用的全部服務(wù)的全部版本,并且在更新版本專用類群存儲單元中存儲使用中所應(yīng)用的更新版本專用類群的全部相同版本。根據(jù)本發(fā)明,提供了一種用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法,其中,該服務(wù)提供裝置包括版本信息存儲裝置,在其中存儲將要提供給每個用戶的服務(wù)以及該服務(wù)的版本信息,該服務(wù)和該版本信息彼此相關(guān)聯(lián);默認類群存儲裝置,在其中存儲將要提供給該用戶的該服務(wù)中具有最舊版本的默認類群;更新版本專用類群存儲裝置,在其中存儲用于在該最舊版本之后更新的各個版本各自的更新版本專用類群,該更新版本專用類群包括與該默認類群具有區(qū)別的差分類群;默認加載器,其讀出并且執(zhí)行在該默認類群存儲裝置中存儲的該默認類群;更新版本專用差分加載器,其被提供給每個該更新版本專用類群并且其讀出并且執(zhí)行在該更新版本專用類群存儲裝置中存儲的每個該更新版本專用類群;其中, 該用于處理數(shù)據(jù)的方法包括通過該服務(wù)提供裝置把將要提供給每個用戶的服務(wù)和該服務(wù)的版本信息存儲到該版本信息存儲裝置中,該服務(wù)和該版本信息彼此相關(guān)聯(lián);通過該服務(wù)提供裝置,將該默認類群存儲到該默認類群存儲裝置中;通過該服務(wù)提供裝置,對于在該最舊版本之后更新的每個版本,將該更新版本專用類群存儲到該更新版本專用類群存儲裝置中;通過該服務(wù)提供裝置,從該用戶接收用于該服務(wù)的使用的請求;通過該服務(wù)提供裝置, 參考該版本信息存儲裝置,以指定適合于從其接收到該請求的用戶的版本;通過該服務(wù)提供裝置,通過使用該默認加載器和與該更新版本專用類群的該指定版本相關(guān)聯(lián)的該更新版本專用差分加載器,生成適合于該用戶的該指定版本的服務(wù)對象并且執(zhí)行處理;并且通過該服務(wù)提供裝置,根據(jù)執(zhí)行該處理的結(jié)果,向該用戶提供與該請求相匹配的服務(wù)。根據(jù)本發(fā)明,提供了一種用于控制服務(wù)提供裝置的計算機程序,該計算機包括版本信息存儲裝置,在其中存儲將要提供給每個用戶的服務(wù)以及該服務(wù)的版本信息,該服務(wù)和該版本信息彼此相關(guān)聯(lián);默認類群存儲裝置,在其中存儲將要提供給該用戶的該服務(wù)中具有最舊版本的默認類群;更新版本專用類群存儲裝置,在其中存儲用于在該最舊版本之后更新的各個版本各自的更新版本專用類群,該更新版本專用類群包括與該默認類群具有區(qū)別的差分類群;默認加載器,其讀出并且執(zhí)行在該默認類群存儲裝置中存儲的該默認類群;更新版本專用差分加載器,其被提供給每個該更新版本專用類群并且其讀出并且執(zhí)行在該更新版本專用類群存儲裝置中存儲的每個該更新版本專用類群;并且,該計算機程序?qū)е略撚嬎銠C執(zhí)行把將要提供給每個用戶的服務(wù)和該服務(wù)的版本信息存儲到該版本信息存儲裝置中的步驟,該服務(wù)和該版本信息彼此相關(guān)聯(lián);把該默認類群存儲到該默認類群存儲裝置中的步驟;對于在最舊版本之后更新的每個版本,將該更新版本專用類群存儲到該更新版本專用類群存儲裝置中的步驟;從該用戶接收用于該服務(wù)的使用的請求的步驟;參考該版本信息存儲裝置以指定適合于從其接收到該請求的用戶的版本的步驟;通過使用該默認加載器和與該更新版本專用類群的該指定版本相關(guān)聯(lián)的該更新版本專用差分加載器, 生成適合于該用戶的該指定版本的服務(wù)對象并且執(zhí)行處理的步驟;以及,根據(jù)執(zhí)行該處理的結(jié)果,向該用戶提供與該請求相匹配的服務(wù)的步驟。另外,以上組件的任意隨意組合以及本發(fā)明在方法、裝置、系統(tǒng)、記錄介質(zhì)和計算機程序之間的任意變體實際也是本發(fā)明的方案。另外,本發(fā)明的組件不必彼此獨立。例如,兩個或者更多個組件可以形成為單個成員,一個組件可以與兩個或者更多個成員構(gòu)成在一起,一個組件可以是另一個組件的一部分或者一個組件的一部分可以與另一個組件的一部分重疊。此外,順序描述了根據(jù)本發(fā)明的用于處理數(shù)據(jù)的方法和計算機程序的多個步驟。 然而,該描述中的順序不限于實際的順序。因此,當(dāng)實現(xiàn)根據(jù)本發(fā)明的用于處理數(shù)據(jù)的方法和計算機程序時,在不影響該步驟的內(nèi)容的前提下可以改變該步驟的先后順序。此外,根據(jù)本發(fā)明的用于處理數(shù)據(jù)的方法和計算機程序的步驟不必彼此以不同的定時執(zhí)行??梢栽趫?zhí)行一個步驟的同時執(zhí)行另一個步驟,或者該步驟的定時可以部分地或者完全地與另一個步驟的定時重疊。本發(fā)明提供了防止服務(wù)在服務(wù)更新時停止并且防止在用戶側(cè)發(fā)生不一致的服務(wù)提供裝置、服務(wù)提供方法、用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法和計算機程序。
通過下文將要描述的示例性的實施方式和附圖,前述目的以及其他目的、特征和優(yōu)點將更顯而易見。。圖1是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。圖2是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供裝置的版本信息存儲單元中所存儲的版本信息管理表的結(jié)構(gòu)的示例的圖。圖3是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的操作的示例的流程圖。圖4是示出了在根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)中的服務(wù)對象操作中的操作的示例的流程圖。圖5是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。圖6是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供裝置的使用狀況存儲單元中存儲的會話信息表的結(jié)構(gòu)的示例的圖。
圖7是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的操作的示例的流程圖。圖8是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。圖9是示出了在根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)中的服務(wù)對象的版本刪除時的操作的示例的流程圖。圖10是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。圖11是示出了在根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)中的服務(wù)對象版本的添加時的注冊操作的示例的流程圖。圖12是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。圖13是示出了根據(jù)本發(fā)明的示例性的實施方式的用戶請求數(shù)據(jù)的示例的圖。圖14是示出了根據(jù)本發(fā)明的示例性的實施方式的添加了會話的用戶請求數(shù)據(jù)的示例的圖。圖15是示出了對根據(jù)本發(fā)明的示例性的實施方式的服務(wù)請求的服務(wù)響應(yīng)的示例的圖。圖16是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。圖17是示出了在根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)中的服務(wù)對象版本的添加時的注冊操作的示例的流程圖。圖18是示出了根據(jù)本發(fā)明的示例性的實施方式的、根據(jù)方面描述的更新現(xiàn)有類的示例的圖。圖19是示出了包括服務(wù)提供裝置的配置的示例的方框圖,其中服務(wù)的不同版本被部署給該服務(wù)提供裝置。
具體實施例方式(第一示例性實施方式)下文將使用附圖來描述本發(fā)明的示例性的實施方式。另外,將對相同的組件賦予相同的附圖標記并且在全部附圖中不重復(fù)。圖1是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。首先,在本說明書中“用戶”總體而言意味著使用由服務(wù)提供裝置所提供的服務(wù)的主體,并且還意味著人類、由人類使用的終端設(shè)備和程序以及無關(guān)人類的交互而操作的裝置和程序。此外,“用戶”可以是一群用戶,該群用戶囊括多個用戶(如企業(yè)或企業(yè)的部門或單獨的用戶)。首先,將描述本發(fā)明的前提。根據(jù)本發(fā)明的服務(wù)對象包括給予多個類實體的實例。 該實例是從由加載器管理并且布置在存儲器上的類生成的,從而使得服務(wù)對象可執(zhí)行。由根據(jù)本發(fā)明的系統(tǒng)所提供的服務(wù)是由軟件實現(xiàn)的一些功能并且不僅包括商業(yè)封裝軟件(如文字處理器和電子數(shù)據(jù)表)還包括所謂的組件(該組件通過調(diào)度表、項目管
1理、公告板、電子會議室和網(wǎng)絡(luò)郵件發(fā)布來共享企業(yè)的信息)、商業(yè)軟件(該商業(yè)軟件用于金融和財會、用于使用在線存儲來共享數(shù)據(jù)、在每種類型的商業(yè)或在每個企業(yè)中訂制或者用于通用商業(yè)管理、金融管理、生產(chǎn)管理或者客戶關(guān)系管理(CRM)客戶端管理)以及具有高級科學(xué)計算(如計算機輔助設(shè)計(CAD)、結(jié)構(gòu)計算、媒體處理(如圖像處理和聲音處理)以及流仿真)的庫功能的軟件。具體而言,根據(jù)本發(fā)明的系統(tǒng)對功能更新頻繁并且被大量用戶使用的網(wǎng)絡(luò)應(yīng)用服務(wù)有用。根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供裝置200包括版本信息存儲單元 (版本信息存儲單元207),在其中存儲將要提供給每個用戶13的服務(wù)以及該服務(wù)的版本信息,該服務(wù)和該版本信息彼此相關(guān)聯(lián);默認類群存儲單元(加載器管理單元210),在其中存儲將要提供給該用戶13的該服務(wù)中具有最舊版本的默認類群221 ;更新版本專用類群存儲單元(加載器管理單元210),在其中存儲用于在該最舊版本之后更新的各個版本各自的更新版本專用類群(更新類群231),該更新版本專用類群(更新類群231)包括與該默認類群 221具有區(qū)別的差分類群;默認加載單元(默認加載器22 ,其讀出并且執(zhí)行在該加載器管理單元210中存儲的該默認類群221 ;更新版本專用差分加載單元(差分加載器23 ,其被提供給每個該更新類群231并且分別讀出并且執(zhí)行在該加載器管理單元210中存儲的每個該更新類群231 ;接收單元(請求接收單元20 ,其從該用戶13接收用于該服務(wù)的使用的請求;指定單元(加載器指定單元20 ,其參考該版本信息存儲單元207,以指定適合于從其接收到該請求的用戶13的版本;服務(wù)對象管理單元M1,其通過使用該默認加載器223 和與適用于該用戶13的該更新類群231的該指定版本相關(guān)聯(lián)的差分加載器233,生成適合于該用戶13的該指定版本的服務(wù)對象并且執(zhí)行處理;以及提供單元(服務(wù)提供單元對3), 其根據(jù)該處理的執(zhí)行結(jié)果,向該用戶13提供與該請求相匹配的服務(wù)。用戶13(圖中的用戶Ul和U2)向服務(wù)提供裝置200發(fā)送服務(wù)請求。在圖1中,用戶U2的用戶數(shù)量、服務(wù)使用數(shù)量以及使用服務(wù)的頻率多于用戶U1。此外,用戶數(shù)量、服務(wù)使用數(shù)量或使用服務(wù)的頻率隨著用戶13而不同。服務(wù)提供裝置200包括接口單元(I/F) 201、請求接收單元203、加載器指定單元 205、版本信息存儲單元207、加載器管理單元210、服務(wù)對象管理單元Ml以及服務(wù)提供單元 243。 加載器管理單元210包括默認類群221、默認加載器223、至少一個差分加載器233 以及與各自的差分加載器233相關(guān)聯(lián)的更新類群231。服務(wù)提供裝置200可以是包括中央處理單元(CPU)、存儲器、硬盤和通信裝置(圖中未顯示)的計算機并且該計算機可以連接到輸入裝置(如鍵盤和鼠標)和輸出裝置(如顯示器和打印機)。服務(wù)提供裝置200可以通過計算機實現(xiàn)每個組件的每個功能,其中該計算機根據(jù)存儲在例如記錄介質(zhì)(磁盤、半導(dǎo)體存儲器、光盤等等)中的計算機程序來執(zhí)行處理。另外,在每個下文的附圖中沒有顯示與本發(fā)明的實質(zhì)無關(guān)部分的配置。此外,由任意計算機(大體上包括CPU、內(nèi)存、被加載到該內(nèi)存中并且被設(shè)計為實現(xiàn)圖1中所示的組件的程序、存儲單元(如用于存儲該程序的硬盤)以及網(wǎng)絡(luò)連接接口) 的硬件和軟件的任何組合實現(xiàn)服務(wù)提供裝置的各個組件。顯然,對于本領(lǐng)域的技術(shù)人員可以對用于實現(xiàn)該組件的方法和裝置做出各種修改。下文所述的附圖顯示了功能塊而不是硬件結(jié)構(gòu)。此外,CPU將程序從硬盤讀取到內(nèi)存中并且執(zhí)行該程序,從而使其能夠?qū)崿F(xiàn)每個單元的每個功能。根據(jù)示例性的實施方式的計算機程序是用于控制服務(wù)提供裝置200的計算機程序,并且其被描述為導(dǎo)致計算機執(zhí)行把將要提供給每個用戶13的服務(wù)和該服務(wù)的版本信息存儲到該版本信息存儲單元207中的步驟;把該默認類群221存儲到該加載器管理單元 210中的步驟;對于在最舊版本之后更新每個版本,將該更新類群231分別存儲到該加載器管理單元210中的步驟;從該用戶13接收用于該服務(wù)的使用的請求的步驟;參考該版本信息存儲單元207以指定適合于從其接收到該請求的用戶13的版本的步驟;通過使用與該更新類群231的該指定版本相關(guān)聯(lián)的默認加載器223和差分加載器233,生成適合于該用戶 13的該版本的服務(wù)對象并且執(zhí)行處理的步驟;以及,根據(jù)該處理的執(zhí)行結(jié)果,向該用戶13 提供與該請求相匹配的服務(wù)的步驟。接口單元201通過網(wǎng)絡(luò)25(如因特網(wǎng)、局域網(wǎng)(LAN)或廣域網(wǎng)(WAN))與用戶13 的終端或裝置通信。請求接收單元203通過網(wǎng)絡(luò)25從用戶13接收請求,并且從接收請求的內(nèi)容中提取各種信息片段以傳遞到服務(wù)對象管理單元Ml。更具體而言,請求接收單元 203從接收自用戶13的請求內(nèi)容提取用于指定請求方的信息、用于識別一系列相關(guān)的請求的標識(ID)、用于識別請求使用的服務(wù)和請求使用的服務(wù)的參數(shù)的信息,以傳遞到服務(wù)對象管理單元Ml。另外,在本發(fā)明的以下描述中將一系列相關(guān)的請求具體稱為“會話”,并且將該會話的ID稱為會話ID。服務(wù)對象管理單元241基于從請求接收單元203接收的參數(shù),配置并且執(zhí)行用于請求方的用戶13的適當(dāng)?shù)姆?wù)對象。更具體而言,服務(wù)對象管理單元Ml將從請求接收單元203接收的參數(shù)傳遞到加載器指定單元205,并且請求用于用戶13的加載器的合適的版本。此外,通過使用從加載器指定單元205返回的加載器,生成該服務(wù)對象。此外,將參數(shù)傳遞到該服務(wù)對象,并且執(zhí)行處理以將結(jié)果傳遞到服務(wù)提供單元M3。根據(jù)來自服務(wù)對象管理單元241的請求,加載器指定單元205根據(jù)由每個用戶使用的服務(wù)的版本指定適當(dāng)?shù)募虞d器。更具體而言,加載器指定單元205從版本信息存儲單元207的版本信息管理表700,獲得需要提供給請求方的用戶13的版本信息。另外,當(dāng)請求最舊版本時,僅獲得默認加載器223而無需獲得差分加載器233。版本信息存儲單元207存儲關(guān)于每個用戶使用哪個版本的服務(wù)的信息。圖2是示出了版本信息存儲單元207中所存儲的版本信息管理表700的結(jié)構(gòu)的示例的圖。如圖2中所示的,版本信息管理表700包括用戶ID欄701、服務(wù)名稱欄702和版本號欄703,他們分別與用戶13的用戶ID、將要提供給用戶13的服務(wù)以及將要提供的服務(wù)的版本號相關(guān)聯(lián)。 另外,版本號欄703使得不僅能夠通過具體版本指定服務(wù)的版本號而且還能夠總是將其指定為最新版本?;氐綀D1,服務(wù)提供單元243從服務(wù)對象管理單元241接收處理結(jié)果,以通過網(wǎng)絡(luò) 25提供給用戶13。這樣,就有可能提供與用戶13的請求相匹配的服務(wù)。在加載器管理單元210中,默認加載器223管理在該系統(tǒng)的全部用戶13之間公共的默認類群221。差分加載器233包括多個差分加載器A到X,他們管理分別從不同版本的默認類群221得到的多個更新類群231。默認加載器223和全部差分加載器A到X具有父與子的關(guān)系,并且默認加載器223是全部差分加載器233之父。另外,差分加載器233的數(shù)量對應(yīng)于需要提供的版本的數(shù)量,并且圖1中的版本號(如V1.01、1.02*V2.00)以及加載器數(shù)量僅僅是示例性的。此外,差分加載器233的數(shù)量對應(yīng)于需要提供的版本的數(shù)量,并且其不限于圖1中的三個。通過默認加載器223將用于存儲用于實現(xiàn)最舊版本服務(wù)所必要的類群的默認類群221加載到內(nèi)存上。此外,通過差分加載器233,為各個版本加載更新類群231,該更新類群231包括較新版本而非最舊版本的更新部分的類。以下將描述根據(jù)如此配置的示例性的實施方式的服務(wù)提供系統(tǒng)的操作。圖3是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的操作的示例的流程圖。以下將使用圖1到圖3來描述該操作。根據(jù)該根據(jù)示例性的實施方式的服務(wù)提供裝置的數(shù)據(jù)處理方法,該用于處理數(shù)據(jù)的方法包括通過該服務(wù)提供裝置200,把將要提供給每個用戶13的服務(wù)和該服務(wù)的版本信息存儲到該版本信息存儲單元207中,該服務(wù)和該版本信息彼此相關(guān)聯(lián);通過該服務(wù)提供裝置200,將該默認類群221存儲到加載器管理單元210中;通過該服務(wù)提供裝置200,對于在最舊版本之后更新每個版本,將該更新類群231存儲到該加載器管理單元210中;通過該服務(wù)提供裝置200,從該用戶13接收用于該服務(wù)的使用的請求(步驟S101);通過該服務(wù)提供裝置200,參考該版本信息存儲單元207,以指定適合于從其接收到該請求的用戶13的版本(步驟;通過該服務(wù)提供裝置200,通過使用默認加載器223和與適用于用戶13 的更新類群231的指定版本相關(guān)聯(lián)的差分加載器233,生成適合于該用戶13的該指定版本的服務(wù)對象并且執(zhí)行處理(步驟S107和步驟S109);并且通過該服務(wù)提供裝置200,根據(jù)該處理的執(zhí)行結(jié)果,向該用戶13提供與該請求相匹配的服務(wù)(步驟S111)。更具體而言,請求接收單元203首先從用戶13接收請求數(shù)據(jù)(步驟S101)。然后, 請求接收單元203從接收的請求數(shù)據(jù)提取請求方的用戶ID、服務(wù)或操作名稱、請求使用的服務(wù)的參數(shù),以傳遞到服務(wù)對象管理單元241 (步驟S10;3)。加載器指定單元205從服務(wù)對象管理單元241接收該參數(shù),并且加載器指定單元205通過參考版本信息存儲單元207,從用戶ID獲得需要提供給用戶13的版本信息(步驟S105)。此外,加載器指定單元205訪問加載器管理單元210,并且獲得與獲得的版本相匹配的其中一個差分加載器233和默認加載器223(步驟S107)。然后,加載器指定單元205 向服務(wù)對象管理單元241返回所獲得的差分加載器233和默認加載器223。當(dāng)向用戶13提供最舊版本時,加載器指定單元205僅向服務(wù)對象管理單元241返回默認加載器223而不用選擇差分加載器233。服務(wù)對象管理單元241從指定單元205接收差分加載器233和默認加載器223,并且通過使用獲得的加載器,執(zhí)行用戶13所請求的服務(wù)對象(步驟S109)。服務(wù)對象管理單元241通過服務(wù)提供單元M3向用戶13返回該執(zhí)行結(jié)果(步驟S111),并且完成處理。這使得通過網(wǎng)絡(luò)25將該服務(wù)從服務(wù)提供單元243提供給用戶13。圖4是示出了在根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)中的服務(wù)對象操作中的操作的示例的流程圖。具體而言,將描述服務(wù)提供系統(tǒng)中的服務(wù)對象操作。在下文中將參考圖4來描述在服務(wù)對象操作中如何使用加載器。在服務(wù)對象管理單元Ml中,在服務(wù)對象操作中在代碼中執(zhí)行類的參考(步驟S1501)。當(dāng)對加載器中的加載類進行參考時,首先確認在從加載器指定單元205返回的差分加載器中是否存在對應(yīng)的類(步驟S15(X3)。當(dāng)存在對應(yīng)的類(步驟S1503為“是”)時, 選擇該對應(yīng)的類作為實際被參考的加載類(步驟S15(^)。當(dāng)不存在對應(yīng)的類(步驟S1503 為“否”)或者從加載器指定單元205僅傳遞了默認加載器223(步驟S1503為“否”)時, 確認在默認加載器223中是否存在對應(yīng)的類(步驟S1507)。當(dāng)存在對應(yīng)的類(步驟S1507為“是”)時,選擇該對應(yīng)的類作為實際被參考的加載類(步驟S1509)。當(dāng)甚至該默認加載器223中也不存在對應(yīng)的類(步驟S1507為“否”) 時,給出錯誤以表明不可能找到任何類并且執(zhí)行異常處理(步驟S1511)。當(dāng)在步驟S1505或步驟S1509中選擇了被參考的加載類之后,將該加載類返回參考源的服務(wù)對象(步驟S15i;3)。根據(jù)該操作,有可能優(yōu)先參考差分加載器中的加載類并且在不存在對應(yīng)的類時參考默認加載器223中的類。如上所述,根據(jù)示例性的實施方式的服務(wù)提供系統(tǒng)可以根據(jù)服務(wù)請求方(用戶 13)的要求,多重地提供服務(wù)的多個版本,并且為用戶13有效地提供服務(wù)的合適版本。根據(jù)示例性的實施方式的服務(wù)提供裝置200對于請求被提供的服務(wù)的每個版本僅維持更新類并且共享公共類,從而使其不必多重地讀取一個類,并且可以降低提供服務(wù)的多個版本的成本。即,可以盡可能大地提高繼續(xù)提供舊版本服務(wù)所需的計算器資源的效率(第二示例性實施例)圖5是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)與以上示例性的實施方式的不同之處在于保持將要提供的服務(wù)的一致性,同時檢查用戶所使用的服務(wù)的使用狀況。根據(jù)該示例性的實施方式的服務(wù)提供裝置200可以解決在向多個用戶提供與來自多個用戶的不同的請求相匹配的服務(wù)的多個版本的情況中,在服務(wù)更新時服務(wù)變得與用戶側(cè)不一致的問題。以下將詳細描述該問題。存在用戶通過組合所提供的服務(wù)的一些功能來實現(xiàn)用戶的應(yīng)用的情況。在該情況中,服務(wù)的功能被順序地調(diào)用并且被用于一系列用戶側(cè)應(yīng)用處理中。這是因為,在該情況中,如果服務(wù)側(cè)突然將版本更新為新版本而完全沒有考慮用戶側(cè)應(yīng)用處理,則在一系列處理的中以混合的方式調(diào)用功能的舊版本和該功能的新版本。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)可以通過維持要提供的服務(wù)的一致性同時檢查該服務(wù)的用戶的使用狀況,解決在用戶側(cè)發(fā)生不一致的問題。根據(jù)該示例性的實施方式的服務(wù)提供裝置300還包括使用狀況存儲單元301,其管理由用戶13使用的服務(wù)的每個版本的使用狀況;以及一致性管理單元303,其基于由使用狀況存儲單元301所管理的使用狀況,為每個用戶13確定使用的服務(wù)的版本,并且使用相同的版本直到用戶13完成該版本服務(wù)的一系列使用為止,從而維持為每個用戶13所提供的服務(wù)的一致性。更具體而言,根據(jù)該示例性的實施方式的服務(wù)提供裝置300包括與根據(jù)以上圖1 的示例性的實施方式的服務(wù)提供裝置200相同的配置。根據(jù)該示例性的實施方式的服務(wù)提供裝置300包括服務(wù)對象管理單元341以替代服務(wù)對象管理單元Ml,并且還包括使用狀況存儲單元301和一致性管理單元303。使用狀況存儲單元301管理由用戶13使用的服務(wù)的每個版本的使用狀況。圖6是示出了使用狀況存儲單元301中存儲的會話信息表500的結(jié)構(gòu)的示例的圖。如圖6中所示的,會話信息表500包括用于標識會話的會話ID欄501、用戶ID欄502、版本號欄503和到期日期欄504?;氐綀D5,一致性管理單元303管理來自用戶13的一組請求系列,基于由使用狀況存儲單元301所管理的使用狀況,為每個用戶13確定使用的服務(wù)的版本,并且使用相同的版本直到用戶13完成該版本服務(wù)的一系列使用為止,從而維持為每個用戶13所提供的服務(wù)的一致性。服務(wù)對象管理單元341從加載器指定單元205獲得需要被提供給用戶13的版本信息,并且基于用戶ID和該版本信息,向一致性管理單元303查詢在會話信息表500中是否存在對應(yīng)的會話ID的記錄。當(dāng)在會話信息表500中存在對應(yīng)的會話ID的記錄時,服務(wù)對象管理單元341向加載器指定單元205請求該記錄中記錄的差分加載器233的任意一個版本和默認加載器223。當(dāng)在會話信息表500中不存在對應(yīng)的會話ID的記錄時,服務(wù)對象管理單元341請求之前從加載器指定單元205返回的差分加載器233的任意一個版本和默認加載器223。以下將描述根據(jù)如此配置的示例性的實施方式的服務(wù)提供裝置300的操作。圖7 是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的操作的示例的流程圖。以下將使用圖5到圖7來描述該操作。用于處理根據(jù)該示例性的實施方式的服務(wù)提供裝置中的數(shù)據(jù)的方法包括通過服務(wù)提供裝置300,管理會話信息表500中由用戶13使用的服務(wù)的每個版本的使用狀況;通過服務(wù)提供裝置300,基于會話信息表500中的使用狀況,為每個用戶13確定使用的服務(wù)的版本(步驟S1007到S1013);并且通過服務(wù)提供裝置300,使用相同的版本直到用戶13完成該版本服務(wù)的一系列使用為止,從而維持為每個用戶13所提供的服務(wù)的一致性。更具體而言,根據(jù)該示例性的實施方式的服務(wù)提供裝置300包括與圖3中的、用于根據(jù)以上示例性的實施方式的服務(wù)提供裝置200的流程圖相同的步驟SlOl和步驟S105到步驟S111,并且還包括步驟S1003、步驟S1007、步驟S1009、步驟SllOl和步驟S1013。服務(wù)對象管理單元341從用戶13接收請求數(shù)據(jù),該請求數(shù)據(jù)是請求接收單元203 在步驟SlOl中接收的,并且從來自用戶13的請求數(shù)據(jù)中提取用戶ID、會話ID、服務(wù)或操作名稱以及參數(shù),以傳遞到加載器指定單元205(步驟S100;3)。此外,加載器指定單元205執(zhí)行與圖3中相同的處理(步驟S105),并且向服務(wù)對象管理單元341返回需要提供給用戶 13的版本信息。然后,服務(wù)對象管理單元341向一致性管理單元303查詢在會話信息表500中是否存在對應(yīng)的會話ID的記錄(步驟S1007)。當(dāng)在由一致性管理單元303管理的會話信息中存在對應(yīng)的會話ID的有效記錄(步驟S1009為“是”)時,服務(wù)對象管理單元341將由以前從加載器指定單元205獲得的并且需要被提供給用戶13的服務(wù)的版本改為從一致性管理單元303獲得的版本(步驟S10i;3)。這導(dǎo)致服務(wù)對象管理單元341向加載器指定單元 205請求該記錄中記錄的差分加載器233的任意一個版本和默認加載器223。另一方面,當(dāng)不存在對應(yīng)的會話ID的有效記錄(步驟S1009為“否”)時,服務(wù)對象管理單元Ml向使用狀況存儲單元301的會話信息表500添加新的記錄,并且添加利用步驟S1003中所獲得的版本信息和會話ID來配置的記錄以作為一致性信息(步驟S1011)。即,服務(wù)對象管理單元341向加載器指定單元205請求之前從加載器指定單元205返回的差分加載器233的任意一個版本和默認加載器223。另外,當(dāng)請求最舊版本時,不返回差分加載器233而僅返回默認加載器223。此外,加載器指定單元205執(zhí)行與圖3中相同的處理(步驟S107),并且向服務(wù)對象管理單元241返回加載器指定單元205中指定的加載器。此外,服務(wù)對象管理單元Ml 執(zhí)行與圖3中相同的處理(步驟S109),并且服務(wù)提供單元243通過網(wǎng)絡(luò)25向用戶13提供服務(wù)(步驟S111)并且完成處理。如上所述,根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)提供與以上示例性的實施方式相同的效果。此外,根據(jù)本發(fā)明的示例性的優(yōu)點在于根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)使得一致性管理單元303管理用戶13的一系列請求并且即使在開始提供新版本服務(wù)之后仍然與該新版本服務(wù)并行地提供舊版本服務(wù),從而使用戶13有可能繼續(xù)使用該用戶13已使用過的舊版本服務(wù)直到完成一系列請求為止。因此,在用戶13側(cè)不大可能發(fā)生服務(wù)不一致。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)因此具有維持服務(wù)一致的功能。因此,當(dāng)例如在提供給用戶13的服務(wù)的使用的中途更新版本時或者當(dāng)用戶13改變版本指定時,能夠防止不能維持一致性的問題。(第三示例性實施方式)圖8是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)與以上示例性的實施方式的不同之處在于能夠在不停止該系統(tǒng)的前提下去除未被使用的非必要的舊版本服務(wù)。根據(jù)該示例性的實施方式的服務(wù)提供裝置400可以解決服務(wù)在服務(wù)更新時停止的問題。即,服務(wù)提供裝置400可以解決若不停止服務(wù)則不能提供由多個用戶所請求的服務(wù)的多個不同版本的問題。下文將詳細描述該問題。該問題關(guān)系到與以上示例性的實施方式的問題的折中。 為了防止服務(wù)不一致,有必要例如在服務(wù)更新為新版本之前等待一系列已經(jīng)正在進行操作的用戶側(cè)處理結(jié)束。另一方面,當(dāng)在一系列用戶側(cè)應(yīng)用處理期間另外接收到另一個用戶側(cè)應(yīng)用的請求時,另一個處理開始。因此,有必要阻止新請求,直到處于操作中的全部處理完成為止。根據(jù)該示例性的實施方式的服務(wù)提供裝置400還包括確定單元(服務(wù)部署管理單元401),其參考使用狀況存儲單元301和版本信息存儲單元207,以確定該服務(wù)是否存在未被用戶13使用的舊版本;以及刪除單元(服務(wù)部署管理單元401),其在當(dāng)確定該服務(wù)存在未被使用的舊版本時,從加載器管理單元210刪除該服務(wù)的更新類群231的該舊版本并且刪除對應(yīng)的差分加載器233。更具體而言,服務(wù)提供裝置400包括與以上圖5中的示例性的實施方式的服務(wù)提供裝置300相同的配置,并且還包括服務(wù)部署管理單元401。服務(wù)部署管理單元401管理用于配置服務(wù)的類的部署。更具體而言,服務(wù)部署管理單元401參考使用狀況存儲單元301和版本信息存儲單元207,以確定是否存在未被任何用戶13使用的舊版本服務(wù)。另外,當(dāng)確定存在未被使用的舊版本服務(wù)時,服務(wù)部署管理單元401從加載器管理單元210刪除該舊版本服務(wù)的更新類群231并且還從加載器管理單元 210刪除對應(yīng)的差分加載器233。
服務(wù)部署管理單元401可以例如有規(guī)律地控制做出以上關(guān)于是否能夠刪除舊版本服務(wù)的確定的定時,并且自動地刪除在預(yù)定的時間周期內(nèi)和之后的未被使用舊版本服務(wù)??商鎿Q地,在具體版本服務(wù)沒有用戶的情況中,當(dāng)通過操作接收單元(未顯示)從服務(wù)提供裝置400的管理員接收到刪除該具體版本服務(wù)的請求時,服務(wù)部署管理單元401可以刪除該具體的版本服務(wù)。以下將描述根據(jù)如此配置的示例性的實施方式的服務(wù)提供裝置400的操作。圖9 是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的操作的示例的流程圖。具體而言,圖9示出了在服務(wù)對象的版本的刪除時的操作的示例。下文中將使用圖8和圖9來描述該操作。用于處理根據(jù)該示例性的實施方式的服務(wù)提供裝置400中的數(shù)據(jù)的方法包括通過服務(wù)提供裝置400,參考會話信息表500和版本信息存儲單元207,以確定該服務(wù)是否存在未被任何用戶使用的舊版本(步驟S2101和步驟S210O ;當(dāng)確定該服務(wù)存在未被使用的舊版本時,通過服務(wù)提供裝置400從加載器管理單元210刪除該服務(wù)的更新類群231的該舊版本并且還刪除對應(yīng)的差分加載器233(步驟S2113)。更具體而言,當(dāng)存在有規(guī)律地刪除版本的請求或者存在刪除具體版本的請求時, 服務(wù)部署管理單元401向版本信息存儲單元207查詢是否存在該版本的用戶13(步驟 S2101)。當(dāng)存在用戶13(步驟S2101為“是”)時,由于不能刪除該版本,所以向請求方返回不能刪除該版本的錯誤,并且執(zhí)行異常處理(步驟S21(X3)以完成該處理。當(dāng)不存在該版本的用戶13(步驟S2101為“否”)時,服務(wù)部署管理單元401向一致性管理單元303查詢是否還留有使用該版本的會話(步驟S21(^)。一致性管理單元303參考使用狀況存儲單元 301,并且向服務(wù)部署管理單元401返回是否留有用戶13。當(dāng)未留有用戶13(步驟S2105為“否”)時,服務(wù)部署管理單元401在加載器指定單元205中從管理目標中去除該版本的差分加載器,并且從加載器管理單元210刪除該差分加載器(即差分加載器233)和更新類群231(步驟S21i;3)并且完成處理。當(dāng)留有使用對應(yīng)的版本的會話(步驟S2105為“是”)時,服務(wù)部署管理單元401還向一致性管理單元 303查詢該會話是否在到期日期之內(nèi)(步驟S2107)。一致性管理單元303參考使用狀況存儲單元301,并且向服務(wù)對象管理單元241返回該會話是否在到期日期之內(nèi)。如果該會話在到期日期之內(nèi)(步驟S2107為“是”),則服務(wù)對象管理單元241等待一定的時間周期(步驟 S2109)然后返回S2105以重復(fù)處理。如果該會話在到期日期之后(步驟S2107為“否”), 則服務(wù)部署管理單元401使得一致性管理單元303從使用狀況存儲單元301的會話信息表 500中的會話信息中刪除對應(yīng)的會話的記錄(步驟S2111)。此外,服務(wù)對象管理單元Ml 從加載器管理單元210刪除差分加載器233和更新類群231 (步驟S211!3)并且完成處理。如上所述,利用根據(jù)該示例性的實施方式的服務(wù)提供裝置400,服務(wù)部署管理單元 401可以在服務(wù)提供裝置400的管理員對服務(wù)的管理之下,協(xié)同加載器指定單元205和一致性管理單元303,與用于提供服務(wù)的操作并行地部署新版本服務(wù)。如上所述,根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)提供與以上示例性的實施方式相同的效果。此外,根據(jù)本發(fā)明的示例性的優(yōu)點在于根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)可以在不停止該系統(tǒng)的前提下去除未被使用的不必要的舊版本服務(wù),并且可以因此防止不必要的舊版本服務(wù)浪費服務(wù)提供裝置400的加載器管理單元210的內(nèi)存使用容量,
1并且因此降低負載。根據(jù)本發(fā)明的另一個示例性的實施方式可以提供用于執(zhí)行異常處理的方法,包括在圖9的版本刪除處理中,當(dāng)在到期日期之內(nèi)留有對應(yīng)的會話時,在步驟S2109中返回錯誤而無需等待一定的時間周期。圖9中的方法進入無限循環(huán),直到不存在對應(yīng)的會話或者該會話過了到期日期為止。當(dāng)用于執(zhí)行版本刪除步驟的用戶接口需要被實現(xiàn)為在向服務(wù)管理員顯示留有處于到期日期之內(nèi)的對應(yīng)的會話之后即結(jié)束時,根據(jù)該示例性的實施方式的步驟是有效的。(第四示例性實施方式)圖10是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的兩置的方框圖。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)與以上示例性的實施方式的不同之處在于能夠在不停止系統(tǒng)的前提下添加并且更新新版本服務(wù)。根據(jù)該示例性的實施方式的服務(wù)提供裝置800還包括更新接收單元803,其接收差分類群的最近更新的新版本;以及添加單元(服務(wù)部署管理單元801),其對更新類群231 的最后版本添加差分類群的、接收的新版本,以形成并且在加載器管理單元210中存儲更新類群231的該新版本,并且添加差分加載器233的、與更新類群231的該新版本相關(guān)聯(lián)的新版本。此外,服務(wù)提供裝置800還包括指定接收單元(請求接收單元20 ,其從用戶13 接收服務(wù)指定以及該服務(wù)的、該用戶意圖使用的版本;以及注冊單元(服務(wù)部署管理單元 801),其在與用戶13相關(guān)聯(lián)的版本信息存儲單元207中注冊由用戶13所指定的服務(wù)和該版本服務(wù)的版本信息。更具體而言,服務(wù)提供裝置800包括與以上圖5中的示例性的實施方式的服務(wù)提供裝置300相同的配置,并且還包括服務(wù)部署管理單元801和更新接收單元803。替代地, 服務(wù)提供裝置800可以包括與服務(wù)提供裝置400相同的配置,除了在圖8中用服務(wù)部署管理單元801來代替根據(jù)以上示例性的實施方式的服務(wù)提供裝置400的服務(wù)部署管理單元 401。此外,除了上述功能之外,服務(wù)部署管理單元801還可以具有與服務(wù)部署管理單元401 相同的功能。更新接收單元803接收差分類群的、最近由管理員更新的具體新版本的添加/注冊請求。服務(wù)部署管理單元801對更新類群231的最后版本添加與由更新接收單元803接收的該添加/注冊請求相對應(yīng)的差分類群新版本,以形成并且在加載器管理單元210中存儲更新類231的該新版本,并且向加載器管理單元210添加差分加載器233的、與更新類群 231的該新版本相關(guān)聯(lián)的新版本。此外,服務(wù)部署管理單元801在與用戶13相關(guān)聯(lián)的版本信息存儲單元207中注冊并且存儲該服務(wù)和由該用戶指定給該服務(wù)的版本的版本信息。更具體而言,服務(wù)部署管理單元801根據(jù)該添加/注冊請求生成新的差分加載器, 并且此后在加載器管理單元210中與版本號一起注冊該新的差分加載器。此外,服務(wù)部署管理單元801讀取該需要被部署給該新的差分加載器的更新類群并且將其加載到加載器管理單元210中。此外,當(dāng)請求接收單元203從用戶13接收到使用新版本服務(wù)的請求時,服務(wù)部署管理單元801基于該使用請求,獲得用戶13的用戶ID,用戶13意圖使用的服務(wù)的名稱和版本號,并且將他們彼此相關(guān)聯(lián)地注冊在圖2的版本信息存儲單元207中。以下將描述根據(jù)如此配置的示例性的實施方式的服務(wù)提供裝置800的操作。圖11 是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的操作的示例的流程圖。具體而言,圖11示出了在服務(wù)對象的版本的添加時的注冊操作的示例。下文中將使用圖10和圖 11來描述該操作。根據(jù)該示例性的實施方式的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法包括通過該服務(wù)提供裝置800,接收該差分類群的最近更新的新版本(步驟S2001);并且通過該服務(wù)提供裝置800,向該更新類群231的最后版本添加差分類群的、接收的新版本,以形成并且在該加載器管理單元210中存儲該更新類群231的該新版本,并且向加載器管理單元210添加該差分加載器的、與該更新類群231的該新版本相關(guān)聯(lián)的新版本。用于處理根據(jù)該示例性的實施方式的服務(wù)提供裝置中的數(shù)據(jù)的方法包括通過該服務(wù)提供裝置800,從用戶13接收服務(wù)指定以及該服務(wù)的、該用戶意圖使用的版本(步驟 S2007);并且通過該服務(wù)提供裝置800,在與該用戶13相關(guān)聯(lián)的版本信息存儲單元207中注冊由該用戶13所指定的該服務(wù)和該服務(wù)的版本的版本信息(步驟S2009)。更具體而言,當(dāng)更新接收單元803接收到具體版本的添加請求(步驟S2001為 “是”)時,服務(wù)部署管理單元801生成新差分加載器并且在該加載器管理單元210中與新差分加載器的版本號一起注冊新差分加載器(步驟S200;3)。此外,服務(wù)部署管理單元801 讀取將需要被部署給該新差分加載器的更新類群并且將其加載到加載器管理單元210中 (步驟S20(^)。此外,當(dāng)請求接收單元203從用戶13接收到使用新版本服務(wù)的請求(步驟 S2007為“是”)時,服務(wù)部署管理單元801基于該使用請求,獲得用戶13的用戶ID,用戶 13意圖使用的服務(wù)的名稱和版本號,并且將他們彼此相關(guān)聯(lián)地注冊在圖2的版本信息存儲單元207中(步驟S2009)。如上所述,利用根據(jù)該示例性的實施方式的服務(wù)提供裝置800,服務(wù)部署管理單元 801可以在服務(wù)提供裝置800的管理員的服務(wù)的管理之下,協(xié)同加載器指定單元205和一致性管理單元303,與用于提供服務(wù)的操作并行地取消舊版本服務(wù)的部署并且刪除由一致性管理單元303所管理的舊記錄。如上所述,根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)提供與以上示例性的實施方式相同的效果。此外,根據(jù)本發(fā)明的示例性的優(yōu)點在于根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)可以在不等待舊版本服務(wù)結(jié)束的前提下開始新版本,并且在不替換整個系統(tǒng)的前提下通過添加差分加載器的新版本來更新服務(wù),從而使其能夠在繼續(xù)該服務(wù)的同時更新該服務(wù)。這樣,服務(wù)提供裝置800就可以在不停止系統(tǒng)的前提下添加最近更新的服務(wù)的新版本。(第五示例性實施方式)圖12是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)與以上示例性的實施方式的不同之處在于包括多個服務(wù)提供裝置。在該示例性的實施方式中,該多個服務(wù)提供裝置包括相同的配置,并且包括用于提供具有相同版本配置的服務(wù)的加載器和類群。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)1000可以解決當(dāng)用戶請求繼續(xù)獲得該服務(wù)的舊版本時有可能以提供服務(wù)的連續(xù)性為代價的問題。下文將詳細討論該問題。通過向舊版本分配專用硬件和虛擬OS來進行操作的常規(guī)方法需要特定硬件資源來提供舊版本。需要特定硬件資源的其中一個原因在于,圖19 中所示的背景技術(shù)的方法需要對一個舊版本服務(wù)確保至少一個服務(wù)提供裝置。因此,當(dāng)使用該服務(wù)的舊版本的用戶的數(shù)量總體上減少時,難以細致地根據(jù)使用數(shù)量來調(diào)整計算器資源。此外,在需要繼續(xù)提供多個版本的情況下還有另一個原因。另一個原因是在每個服務(wù)提供裝置中,版本彼此輕微不同的服務(wù)類群的管理變得難以處理,從而增加了管理成本。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)1000包括負載分發(fā)裝置(負載分發(fā)器 27),其依據(jù)根據(jù)以上示例性的實施方式的多個服務(wù)提供裝置800(A1、A2、……、和An)的負載狀態(tài),確定用于響應(yīng)于用戶13的請求來提供服務(wù)的服務(wù)提供裝置800,并且分配該服務(wù)提供裝置800。多個服務(wù)提供裝置800在默認類群存儲單元(圖10的加載器管理單元 210)中存儲默認類群221(圖10)的相同版本,從而向該用戶均等地提供使用中所應(yīng)用的全部服務(wù)的全部版本,并且在更新版本專用類群存儲單元(圖10的加載器管理單元210)中存儲使用中所應(yīng)用的更新版本專用類群(圖10的更新類群231)的全部相同版本中的每一個。根據(jù)該配置,由于多個服務(wù)提供裝置包括相同的配置,所以即使當(dāng)用戶或負載的數(shù)量隨著服務(wù)而變化時,也不必預(yù)先考慮負載。因此,與向各自的服務(wù)或版本獨立指派服務(wù)器的另一種情況相比,可以更容易地構(gòu)造系統(tǒng)。這導(dǎo)致能夠在不停止系統(tǒng)的前提下添加或替換服務(wù)器,從而使其易于實現(xiàn)負載分發(fā)。用戶13 (圖12中的用戶Ul和U2)通過負載分發(fā)器27向至少一個服務(wù)提供裝置 800(多個服務(wù)提供裝置Al、A2、……、和An)發(fā)送服務(wù)請求。在由服務(wù)對象執(zhí)行適當(dāng)?shù)奶幚碇螅?wù)提供裝置800然后向用戶13返回處理結(jié)果。為了處理來自用戶13的大量服務(wù)請求,負載分發(fā)器27與多個服務(wù)提供裝置800相連接并且向多個服務(wù)提供裝置800適當(dāng)?shù)刂概商幚?。?dāng)服務(wù)提供裝置800具有非常高的性能時或者當(dāng)來自用戶13的服務(wù)請求沒那么多時,還有可能存在僅有一個服務(wù)提供裝置800處理來在全部用戶的服務(wù)請求而無需負載分發(fā)器27的情況。另外,可以用常規(guī)裝置來配置負載分發(fā)器27,并且這與本發(fā)明的本質(zhì)無關(guān)因此不再贅述。此外,在示例性的實施方式中,多個服務(wù)提供裝置800以相同的方式刪除舊版本服務(wù)或者注冊新版本服務(wù),并且維持彼此相同的配置。根據(jù)本發(fā)明的示例性的優(yōu)點在于根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng) 1000可以提高繼續(xù)提供舊版本服務(wù)所需要的計算器資源的效率。即,能夠降低提供服務(wù)的多個版本的成本。這是因為可以僅維持被請求的服務(wù)的每個版本的更新類并且可以共享公共類,從而使其不必多重地讀取類此外,由于一個裝置可以提供服務(wù)的多個版本,所以即使當(dāng)使用具體版本的用戶的數(shù)量較小時,該裝置也可以操作為用于提供另一個版本的服務(wù)提供裝置。因此,使用硬件資源的效率變高了。即,對每個版本準備裝置導(dǎo)致每個裝置的資源的使用狀況根據(jù)各自版本的使用狀況而變化。結(jié)果,變得有必要調(diào)整裝置的部署。然而,根據(jù)示例性的實施方式的服務(wù)提供系統(tǒng)通過預(yù)測用戶的使用狀況,不必做計劃。此外,這也是為什么可以解決可以用相同的配置來操作任意服務(wù)提供裝置的問題從而使其能夠降低他們的操作成本的原因之
ο(第六示例性實施方式)圖16是示出了根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)的配置的方框圖。根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)與以上圖10中的第四示例性的實施方式的不同之處在于當(dāng)用于橫向改變服務(wù)的設(shè)置被指定給新版本服務(wù)時,能夠在不停止該系統(tǒng)的前提下添加并且更新新版本。另外,根據(jù)圖16中的示例性的實施方式的服務(wù)提供系統(tǒng)還適用于以上根據(jù)圖8和圖12中的示例性的實施方式的服務(wù)提供系統(tǒng)。在第四示例性實施方式中,假設(shè)當(dāng)用該第四實施方式接收新版本服務(wù)時,由更新接收單元803接收更新類群的新版本。存在諸如面向方面編程(AOP)之類的技術(shù),其中AOP 通過改為在服務(wù)中指定用于橫向改變的設(shè)置而非明確地給出要更新的類群,自動更新對應(yīng)的類。該技術(shù)允許統(tǒng)一改變具有恒定特性的一部分程序代碼,并且允許動態(tài)直接改變當(dāng)前執(zhí)行的二進制位而無需重新編譯。在下文中,將服務(wù)中的橫向改變稱為“方面(Aspect)”, 并且將這些改變的設(shè)置稱為“方面定義”。當(dāng)使用諸如AOP的技術(shù)來動態(tài)更新服務(wù)時,方面注入機制將該方面應(yīng)用于對應(yīng)的類,該類被加載到類加載器?;旧希瑢⒂糜谂渲梅?wù)的全部類重新加載到類加載器上,以便隨后應(yīng)用該方面。然而,這導(dǎo)致全部類被多重地加載到差分加載器上的事實,從而使其效率低下。因此,在該示例性的實施方式中提供了這樣一種系統(tǒng),該系統(tǒng)在服務(wù)(如Α0Ρ)的新版本的部署時,注冊該服務(wù)的橫向改變的點以作為機制。因此,即使當(dāng)由于全部自動更新多個類的那種服務(wù)的服務(wù)更新而注冊新版本時,該系統(tǒng)也可以有效地提供服務(wù)而無需停止其他服務(wù)。如圖16中所示的,根據(jù)該示例性的實施方式的服務(wù)提供系統(tǒng)包括服務(wù)提供裝置 900以代替圖10中的服務(wù)提供裝置800。根據(jù)該示例性的實施方式的服務(wù)提供裝置900還包括更新接收單元803,其接收這樣一種設(shè)置(方面定義),在該設(shè)置中描述了新版本在全部服務(wù)范圍內(nèi)的改變規(guī)則;更新類提取單元901,其僅提取將要基于該設(shè)置而改變的目標的類;以及添加單元(服務(wù)部署管理單元801),其在僅對將該要改變的目標的提取類施以改變的同時,對該更新版本專用類群(差分類群231)的最后版本添加該改變的類群(差分類群),以形成并且在該更新版本專用類群存儲單元(加載器管理單元210)中存儲該更新版本專用類群(差分類群231)的該新版本,并且添加該更新版本專用差分加載單元(差分加載器23 的、與該更新版本專用類群(差分類群231)的該新版本相關(guān)聯(lián)的新版本。更具體而言,根據(jù)該示例性的實施方式的服務(wù)提供裝置900包括與圖10中的服務(wù)提供裝置800相同的配置,并且還包括更新類提取單元901和方面注入機制902。在根據(jù)的示例性的實施方式的服務(wù)提供裝置900中,更新接收單元803根據(jù)方面定義,接收服務(wù)更新。當(dāng)更新接收單元803根據(jù)方面定義接收到服務(wù)更新時,服務(wù)部署管理單元801向更新類提取單元901查詢需要更新當(dāng)前使用中的服務(wù)的哪個類。此外,服務(wù)部署管理單元801指示加載器管理單元210僅將該更新的目標類加載到差分加載器的最近生成的新版本中。更新類提取單元901檢查由更新接收單元803所接收的方面定義,以根據(jù)來自服務(wù)部署管理單元801的查詢,檢查需要更新當(dāng)前使用中的服務(wù)的哪個類,并且提取用于該更新的目標類,以返回服務(wù)部署管理單元801。即,在服務(wù)更新時,更新類提取單元901預(yù)先檢查在改變點將要更新哪個類。加載器管理單元210將由服務(wù)部署管理單元801所指定的更新目標類加載到新的差分加載器上。在該情況中,方面注入機制902同時工作,以指示每個差分加載器233基于注冊的方面定義來施以改變,以更新目標類。即,加載器管理單元210根據(jù)在更新類提取單元901將提取的對應(yīng)的類讀取到差分加載器的更新版本上時注冊的改變點來更新類。通過這么做,即使新版本是在全部服務(wù)(如Α0Ρ)的服務(wù)更新之后注冊的,也能夠有效地提供服務(wù)而無需停止任何其他服務(wù)。接下來,將詳細描述在根據(jù)示例性的實施方式的服務(wù)提供系統(tǒng)中,在服務(wù)對象的版本添加時的全部注冊操作。圖17是示出了在根據(jù)本發(fā)明的示例性的實施方式的服務(wù)提供系統(tǒng)中的服務(wù)對象版本的添加時的注冊操作的示例的流程圖。下文中將使用圖16和17 來描述該操作。根據(jù)該示例性的實施方式的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法包括通過服務(wù)提供裝置900,接收這樣一種設(shè)置(方面定義),在該設(shè)置中描述了新版本在全部服務(wù)范圍內(nèi)的改變規(guī)則(步驟S2201為“是”)。此外,服務(wù)部署管理單元801向更新類提取單元 901傳遞注冊的方面定義。然后,更新類提取單元901僅提取作為方面(在該方面中描述了要添加的版本的改變的內(nèi)容)的應(yīng)用目標的類,以將其返回服務(wù)部署管理單元801(步驟 S22(^)。當(dāng)未接收到新版本(步驟S2201為“否”)時,步驟前進到步驟S2205。服務(wù)部署管理單元801生成這樣一種差分加載器作為用于新版本的類加載器,其中這種差分加載器僅將該方面應(yīng)用目標類群加載到加載器管理單元210(步驟S220;3)。此外,服務(wù)部署管理單元801將以上方面應(yīng)用目標類群加載到該新的差分加載器,同時在方面注入機制902中施以該方面(步驟S2204)。根據(jù)該示例性的實施方式的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法還包括通過該服務(wù)提供裝置900,從用戶13接收服務(wù)和該服務(wù)的、所述用戶意圖使用的服務(wù)的版本的指定(步驟S2205為“是”),并且通過服務(wù)提供裝置900,在與該用戶相關(guān)聯(lián)的版本信息存儲單元207中,注冊由用戶13指定的該服務(wù)和該服務(wù)的版本的版本信息(步驟S2206)。當(dāng)未接收到使用時(步驟S2205為“否”),該流程結(jié)束。[示例]將參考圖2、6和12到15,通過使用具體示例,描述用于實現(xiàn)本發(fā)明的最佳模式的操作。同時,下文是一個示例,并且操作和數(shù)據(jù)格式絕非意味著僅限于此。使用根據(jù)以上示例性的實施方式的服務(wù)提供系統(tǒng)1000作為示例來描述本示例。首先,圖13示出了來自用戶的初始請求數(shù)據(jù)的示例。在該示例中,以可擴展標記語言(XML和http://WWW. w3. org/TR/xml)的形式來描述請求數(shù)據(jù)600,并且使用諸如超文本傳輸協(xié)議(HTTP和REC2616)之類的協(xié)議從用戶發(fā)送請求數(shù)據(jù)600?;谠撜埱髷?shù)據(jù),服務(wù)提供裝置800為用戶生成適當(dāng)服務(wù)對象。該請求數(shù)據(jù)包括用戶ID 602和服務(wù)標識部分 603,在用戶ID 602中指定了用戶ID并且在服務(wù)標識部分603中分別將服務(wù)和操作指定為 “MyAnalyze”和”Invoke”。該請求數(shù)據(jù)還包括參數(shù)指定部分604,在參數(shù)指定部分604中指定用于該服務(wù)的參數(shù)。假設(shè)該請求數(shù)據(jù)600是一系列服務(wù)請求中的第一個,在該數(shù)據(jù)中沒有創(chuàng)建會話或沒有會話信息。服務(wù)提供裝置800的服務(wù)對象管理單元341基于請求數(shù)據(jù)600查詢版本信息存儲單元207,以確定使用該服務(wù)的哪個版本。利用圖2中的版本信息存儲單元207的示例,在版本信息管理表700中搜索用戶ID “al234”和服務(wù)“MyAnalyze”的記錄,以便使得隨后在對應(yīng)的版本號欄中返回版本號“VI. 05”。如果不存在對應(yīng)的記錄,那么返回在該時間點上的最新版本號。服務(wù)對象管理單元341從加載器指定單元205獲得用于“VI. 05”的差分加載器, 并且生成“MyAnalyze”的服務(wù)對象。此外,將自變量“xxx”和“yyy”給予該服務(wù)對象的 “Invoke”操作并且執(zhí)行該”Invoke”操作以向用戶返回該執(zhí)行的結(jié)果。圖15示出了響應(yīng)的示例。返回的響應(yīng)650包括用于繼續(xù)一系列后續(xù)服務(wù)的會話ID 651和服務(wù)處理結(jié)果652。 在該示例中,返回處理已被接收的結(jié)果。接下來,圖14示出了當(dāng)繼續(xù)一系列服務(wù)時請求數(shù)據(jù)的示例。該請求數(shù)據(jù)610使得執(zhí)行“getResult”操作,以獲得對“MyAnalyze”服務(wù)和” hvoke”操作進行處理的結(jié)果。請求數(shù)據(jù)610包括會話信息613,從而服務(wù)對象管理單元341使得一致性管理單元303向會話信息表500搜索對應(yīng)于會話“20081114-3245”的版本信息。圖6示出了在由一致性管理單元303所管理的會話信息表500中所存儲的會話信息。一致性管理單元303向該會話信息表500搜索與該請求數(shù)據(jù)中所包括的會話ID 相對應(yīng)的記錄,并且基于該對應(yīng)的記錄的到期日期欄504的值,確定該記錄的信息是否是有效的。在該情況中,該記錄是有效的,并且因此,返回版本號欄503中的值“VI. 05”。服務(wù)對象管理單元341從加載器指定單元205獲得用于該返回的版本號“VI. 05”的差分加載器,并且執(zhí)行“MyAnalyze”服務(wù)和” Invoke”操作的處理,然后向用戶返回該處理的結(jié)果。當(dāng)另外請求服務(wù)時,不向例如請求數(shù)據(jù)600附加會話信息。這使其能夠根據(jù)在版本信息存儲單元207中預(yù)先存儲的版本或者最新版本的服務(wù)對象,執(zhí)行該服務(wù)。當(dāng)該服務(wù)請求是一系列服務(wù)請求的一部分時,在會話信息中包括會話ID,會話ID用于指示與一系列服務(wù)相同。這樣,在獲得該會話信息時所提供的版本的服務(wù)得以繼續(xù),并且在該會話有效時不丟棄該版本的加載器。服務(wù)部署管理單元801有規(guī)律地訪問一致性管理單元303,向會話信息表500的會話信息搜索這樣一種記錄然后從會話信息表500刪除這些記錄,其中在該記錄中到期日期欄504的值指示當(dāng)前時間之前的時間。接下來將使用圖16和18描述根據(jù)本示例的新版本服務(wù)的部署的示例。根據(jù)本發(fā)明的新版本服務(wù)被部署為用于由管理員通過更新接收單元803加載到默認加載器223上的默認類群221的類的方面。圖 18 中的方面定義 1200 的示例是AspectJ(http"www· eclipse, org/aspectj/) 中的描述的示例。當(dāng)該方面定義1200被部署為用于新版本服務(wù)的更新內(nèi)容時,更新類提取單元901分析方面定義1200,并且提取內(nèi)容將要更新的MyAnalyze類(默認類)1100。接下來,加載器管理單元210生成差分加載器的新版本,其僅加載該MyAnalyze類1100。方面注入機制902將方面定義1200施以MyAnalyze類1100,以便更新已施以該方面的MyAnalyze 類1101。然后,將施以方面的MyAnalyze類1101加載到以上差分加載器中。僅預(yù)先提取需要施以該方面的類,并且在專用類加載器中將該方面施以該類,從而能夠在不停止全部服務(wù)的前提下使得單個服務(wù)提供裝置提供這樣一種服務(wù),其中該方面的各種版本都分別被施以于該服務(wù)。雖然已經(jīng)參考以上附圖描述本發(fā)明的示例性的實施方式,但是這些示例性的實施方式是本發(fā)明示例并且可以使用除了以上之外的各種配置。雖然通過參考示例性的實施方式來具體顯示并且描述本發(fā)明,但是本發(fā)明不限于這些實施方式。本領(lǐng)域的技術(shù)人員將理解,在不脫離如權(quán)利要求所定義的本發(fā)明的精神和范圍的前提下,可以對形式和細節(jié)作出各種修改。另外,利用本發(fā)明,關(guān)于用戶的信息是合法獲得并且使用的。本申請基于并且要求2009年3月30日遞交的日本專利申請第2009-083117號以及2010年2月沈日遞交的日本專利申請第2010-41474號的優(yōu)先權(quán),通過參考的方式將以上申請的公開整體并入本文。
權(quán)利要求
1.一種服務(wù)提供裝置,包括版本信息存儲單元,在其中存儲將要提供給每個用戶的服務(wù)以及所述服務(wù)的版本信息,所述服務(wù)和所述版本信息彼此相關(guān)聯(lián);默認類群存儲單元,在其中存儲將要提供給所述用戶的所述服務(wù)之中具有最舊版本的默認類群;更新版本專用類群存儲單元,在其中存儲用于在所述最舊版本之后更新的各個版本各自的更新版本專用類群,所述更新版本專用類群包括與所述默認類群具有區(qū)別的差分類群;默認加載單元,其讀出并且執(zhí)行在所述默認類群存儲單元中存儲的所述默認類群; 更新版本專用差分加載單元,其被提供給每個所述更新版本專用類群并且其讀出并且執(zhí)行在所述更新版本專用類群存儲單元中存儲的每個所述更新版本專用類群; 接收單元,其從所述用戶接收用于所述服務(wù)的使用的請求;指定單元,其參考所述版本信息存儲單元,以指定適合于從其接收到所述請求的用戶的版本;服務(wù)對象管理單元,其通過使用所述默認加載單元和與所述更新版本專用類群的所述指定版本相關(guān)聯(lián)的所述更新版本專用差分加載單元,生成適合于所述用戶的所述指定版本的服務(wù)對象并且執(zhí)行處理;以及提供單元,其根據(jù)執(zhí)行所述處理的結(jié)果,向所述用戶提供與所述請求相匹配的服務(wù)。
2.如權(quán)利要求1所述的服務(wù)提供裝置,還包括使用狀況管理單元,其管理由所述用戶使用的所述服務(wù)的每個版本的使用狀況;以及一致性管理單元,其基于由所述使用狀況管理單元所管理的所述使用狀況,為每個用戶確定使用的所述服務(wù)的版本,并且使用相同的版本直到所述用戶完成所述服務(wù)的所述版本的一系列使用為止,從而維持為每個所述用戶所提供的所述服務(wù)的一致性。
3.如權(quán)利要求2所述的服務(wù)提供裝置,還包括確定單元,其參考所述使用狀況管理單元和所述版本信息存儲單元,以確定所述服務(wù)是否存在未被任何所述用戶使用的舊版本;以及刪除單元,其在當(dāng)確定所述服務(wù)存在未被使用的舊版本時,從所述更新版本專用類群存儲單元刪除所述服務(wù)的所述更新版本專用類群的所述舊版本,并且刪除對應(yīng)的更新版本專用差分加載單元。
4.如權(quán)利要求2或3所述的服務(wù)提供裝置,還包括更新接收單元,其接收所述差分類群的最近更新的新版本;以及添加單元,其對所述更新版本專用類群的最后版本添加差分類群的、接收的新版本,以形成并且在所述更新版本專用類群存儲單元中存儲所述更新版本專用類群的所述新版本, 并且添加所述更新版本專用差分加載單元的、與所述更新版本專用類群的所述新版本相關(guān)聯(lián)的新版本。
5.如權(quán)利要求2或3所述的服務(wù)提供裝置,還包括更新接收單元,其接收這樣一種設(shè)置,在所述設(shè)置中描述了新版本在全部服務(wù)范圍內(nèi)的改變規(guī)則;更新類提取單元,其僅提取將要基于所述設(shè)置而改變的目標的類;以及添加單元,其在僅對將所述要改變的目標的提取類施以改變的同時,向所述更新版本專用類群的最后版本添加所述改變的類群,以形成并且在所述更新版本專用類群存儲單元中存儲所述更新版本專用類群的所述新版本,并且添加所述更新版本專用差分加載單元的、與所述更新版本專用類群的所述新版本相關(guān)聯(lián)的新版本。
6.如權(quán)利要求1到5中的任意一個所述的服務(wù)提供裝置,還包括指定接收單元,其從所述用戶接收服務(wù)的指定以及所述服務(wù)的、所述用戶意圖使用的版本;以及注冊單元,其在與所述用戶相關(guān)聯(lián)的所述版本信息存儲單元中注冊由所述用戶所指定的所述服務(wù)和所述服務(wù)的所述版本的版本信息。
7.一種服務(wù)提供系統(tǒng),包括多個根據(jù)權(quán)利要求1到6中的任意一個所述的服務(wù)提供裝置;以及負載分發(fā)裝置,其根據(jù)所述多個服務(wù)提供裝置的負載狀態(tài),確定用于響應(yīng)于用戶的請求來提供服務(wù)的服務(wù)提供裝置,并且指派所述服務(wù)提供裝置,其中,所述多個服務(wù)提供裝置在所述默認類群存儲單元中存儲所述默認類群的相同版本,從而向所述用戶均等地提供使用中所應(yīng)用的全部服務(wù)的全部版本,并且在所述更新版本專用類群存儲單元中存儲使用中所應(yīng)用的所述更新版本專用類群的全部相同版本。
8.一種用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法,其中 所述服務(wù)提供裝置包括版本信息存儲裝置,在其中存儲將要提供給每個用戶的服務(wù)以及所述服務(wù)的版本信息,所述服務(wù)和所述版本信息彼此相關(guān)聯(lián);默認類群存儲裝置,在其中存儲將要提供給所述用戶的所述服務(wù)中具有最舊版本的默認類群;更新版本專用類群存儲裝置,在其中存儲用于在所述最舊版本之后更新的各個版本各自的更新版本專用類群,所述更新版本專用類群包括與所述默認類群具有區(qū)別的差分類群;默認加載器,其讀出并且執(zhí)行在所述默認類群存儲裝置中存儲的所述默認類群; 更新版本專用差分加載器,其被提供給每個所述更新版本專用類群,并且其讀出并且執(zhí)行在所述更新版本專用類群存儲裝置中存儲的每個所述更新版本專用類群;其中 所述用于處理數(shù)據(jù)的方法包括通過所述服務(wù)提供裝置把將要提供給每個用戶的服務(wù)和所述服務(wù)的版本信息存儲到所述版本信息存儲裝置中,所述服務(wù)和所述版本信息彼此相關(guān)聯(lián);通過所述服務(wù)提供裝置,將所述默認類群存儲到所述默認類群存儲裝置中; 通過所述服務(wù)提供裝置,對于在所述最舊版本之后更新的每個版本,將所述更新版本專用類群存儲到所述更新版本專用類群存儲裝置中;通過所述服務(wù)提供裝置,從所述用戶接收用于所述服務(wù)的使用的請求; 通過所述服務(wù)提供裝置,參考所述版本信息存儲單元,以指定適合于從其接收到所述請求的所述用戶的版本;通過所述服務(wù)提供裝置,通過使用所述默認加載器和與所述更新版本專用類群的所述指定版本相關(guān)聯(lián)的所述更新版本專用差分加載器,生成適合于所述用戶的所述指定版本的服務(wù)對象并且執(zhí)行處理;并且通過所述服務(wù)提供裝置,根據(jù)執(zhí)行所述處理的結(jié)果,向所述用戶提供與所述請求相匹配的所述服務(wù)。
9.如權(quán)利要求8所述的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法,其中所述服務(wù)提供裝置還包括存儲裝置,在所述存儲裝置中存儲使用狀況管理表,所述使用狀況管理表管理由所述用戶使用的所述服務(wù)的每個版本的使用狀況,其中所述用于處理數(shù)據(jù)的方法包括通過所述服務(wù)提供裝置,管理在所述使用狀況管理表中由所述用戶使用的所述服務(wù)的每個版本的使用狀況;通過所述服務(wù)提供裝置,基于所述使用狀況管理表中的所述使用狀況,為每個用戶確定使用的所述服務(wù)的版本;并且使用相同的版本直到所述用戶完成所述服務(wù)的所述版本的一系列使用為止,從而維持為每個所述用戶所提供的所述服務(wù)的一致性。
10.如權(quán)利要求9所述的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法,其中,所述用于處理數(shù)據(jù)的方法包括通過所述服務(wù)提供裝置,參考所述使用狀況管理表和所述版本信息存儲裝置,以確定所述服務(wù)是否存在未被任何所述用戶使用的舊版本;并且通過所述服務(wù)提供裝置,當(dāng)確定所述服務(wù)存在未被使用的舊版本時,從所述更新版本專用類群存儲裝置刪除所述服務(wù)的所述更新版本專用類群的所述舊版本,并且刪除對應(yīng)的更新版本專用差分加載器。
11.如權(quán)利要求9或10所述的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法,其中,所述用于處理數(shù)據(jù)的方法包括通過所述服務(wù)提供裝置,接收所述差分類群的最近更新的新版本;并且通過所述服務(wù)提供裝置,向所述更新版本專用類群的最后版本添加所述差分類群的接收的新版本,以形成并且在所述更新版本專用類群存儲裝置中存儲所述更新版本專用類群的新版本,并且添加所述更新版本專用差分加載器的、與所述更新版本專用類群的所述新版本相關(guān)聯(lián)的新版本。
12.如權(quán)利要求9或10所述的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法,其中,所述用于處理數(shù)據(jù)的方法包括通過所述服務(wù)提供裝置,接收這樣一種設(shè)置,在所述設(shè)置中描述了最近更新的新版本在全部服務(wù)范圍內(nèi)的改變規(guī)則;通過所述服務(wù)提供裝置,僅提取將要基于接收的設(shè)置而改變的目標的類;并且通過所述服務(wù)提供裝置,向所述更新版本專用類群的最后版本添加所述改變的類群, 同時僅對將所述要改變的目標的提取類施以改變,以形成并且在所述更新版本專用類群存儲裝置中存儲所述更新版本專用類群的新版本,并且添加所述更新版本專用差分加載器的、與所述更新版本專用類群的新版本相關(guān)聯(lián)的新版本。
13.如權(quán)利要求8到12中的任意一個所述的用于處理服務(wù)提供裝置中的數(shù)據(jù)的方法, 其中,所述用于處理數(shù)據(jù)的方法包括通過所述服務(wù)提供裝置,從所述用戶接收服務(wù)和所述服務(wù)的、所述用戶意圖使用的版本的指定;并且通過所述服務(wù)提供裝置,在與所述用戶相關(guān)聯(lián)的所述版本信息存儲裝置中,注冊由所述用戶指定的所述服務(wù)和所述服務(wù)的所述版本的版本信息。
14.一種用于控制服務(wù)提供裝置的計算機程序,其中所述計算機包括版本信息存儲裝置,在其中存儲將要提供給每個用戶的服務(wù)以及所述服務(wù)的版本信息,所述服務(wù)和所述版本信息彼此相關(guān)聯(lián);默認類群存儲裝置,在其中存儲將要提供給所述用戶的所述服務(wù)中具有最舊版本的默認類群;更新版本專用類群存儲裝置,在其中存儲用于在所述最舊版本之后更新的各個版本各自的更新版本專用類群,所述更新版本專用類群包括與所述默認類群具有區(qū)別的差分類群;默認加載器,其讀出并且執(zhí)行在所述默認類群存儲裝置中存儲的所述默認類群;更新版本專用差分加載器,其被提供給每個所述更新版本專用類群并且其讀出并且執(zhí)行在所述更新版本專用類群存儲裝置中存儲的每個所述更新版本專用類群;并且所述計算機程序?qū)е滤鲇嬎銠C執(zhí)行把將要提供給每個所述用戶的服務(wù)和所述服務(wù)的版本信息存儲到所述版本信息存儲裝置中的步驟,所述服務(wù)和所述版本信息彼此相關(guān)聯(lián);把所述默認類群存儲到所述默認類群存儲裝置中的步驟;對于在所述最舊版本之后更新的每個版本,將所述更新版本專用類群存儲到所述更新版本專用類群存儲裝置中的步驟;從所述用戶接收用于所述服務(wù)的使用的請求的步驟;參考所述版本信息存儲裝置以指定適合于從其接收到所述請求的用戶的版本的步驟;通過使用所述默認加載器和與所述更新版本專用類群的所述指定版本相關(guān)聯(lián)的所述更新版本專用差分加載器,生成適合于所述用戶的所述指定版本的服務(wù)對象并且執(zhí)行處理的步驟;以及根據(jù)執(zhí)行所述處理的結(jié)果,向所述用戶提供與所述請求相匹配的所述服務(wù)的步驟。
15.如權(quán)利要求14所述的計算機程序,其中,所述計算機還包括存儲裝置,在所述存儲裝置中存儲使用狀況管理表,所述使用狀況管理表管理由所述用戶使用的所述服務(wù)的每個版本的使用狀況,并且所述計算機程序?qū)е滤鲇嬎銠C進一步執(zhí)行管理在所述使用狀況管理表中由所述用戶使用的所述服務(wù)的每個版本的使用狀況的步驟;基于所述使用狀況管理表中的所述使用狀況,為每個用戶確定使用的所述服務(wù)的版本的步驟;以及使用相同的版本直到所述用戶完成所述服務(wù)的所述版本的一系列使用為止,從而維持為每個所述用戶所提供的所述服務(wù)的一致性的步驟。
16.如權(quán)利要求15所述的計算機程序,導(dǎo)致所述計算機進一步執(zhí)行參考所述使用狀況管理表和所述版本信息存儲裝置,以確定所述服務(wù)是否存在未被任何所述用戶使用的舊版本的步驟;以及當(dāng)確定所述服務(wù)存在未被使用的舊版本時,從所述更新版本專用類群存儲裝置刪除所述服務(wù)的所述更新版本專用類群的所述舊版本,并且刪除對應(yīng)的更新版本專用差分加載器的步驟。
17.如權(quán)利要求15或16所述的計算機程序,導(dǎo)致所述計算機進一步執(zhí)行 接收所述差分類群的最近更新的新版本的步驟;以及向所述更新版本專用類群的最后版本添加所述差分類群的接收的新版本,以形成并且在所述更新版本專用類群存儲裝置中存儲所述更新版本專用類群的新版本的步驟;以及添加所述更新版本專用差分加載器的、與所述更新版本專用類群的所述新版本相關(guān)聯(lián)的新版本的步驟。
18.如權(quán)利要求15或16所述的計算機程序,導(dǎo)致所述計算機進一步執(zhí)行接收這樣一種設(shè)置的步驟,在所述設(shè)置中描述了最近更新的新版本在全部服務(wù)范圍內(nèi)的改變規(guī)則;僅提取將要基于接收的設(shè)置而改變的目標的類的步驟;以及向所述更新版本專用類群的最后版本添加所述改變的類群,同時僅對將所述要改變的目標的提取類施以改變,以形成并且在所述更新版本專用類群存儲裝置中存儲所述更新版本專用類群的新版本的步驟;以及添加所述更新版本專用差分加載器的、與所述更新版本專用類群的新版本相關(guān)聯(lián)的新版本的步驟。
19.如權(quán)利要求14到18中的任意一個所述的計算機程序,導(dǎo)致所述計算機進一步執(zhí)行從所述用戶接收服務(wù)的指定和所述服務(wù)的、所述用戶意圖使用的版本的步驟;以及在與所述用戶相關(guān)聯(lián)的所述版本信息存儲裝置中,注冊由所述用戶指定的所述服務(wù)和所述服務(wù)的所述版本的版本信息的步驟。
全文摘要
一種服務(wù)提供裝置(200)包括版本信息存儲單元(207),用于存儲將要提供給每個用戶(13)的服務(wù)和該服務(wù)的版本信息;加載器管理單元(210),用于存儲默認類群(221)和用于各個版本各自的更新類群(231);默認加載器(223),用于從加載器管理單元(210)讀出并且執(zhí)行默認類群(221);差分加載器(233),用于讀出并且執(zhí)行更新類群(231);接收單元(203),用于接收服務(wù)使用請求;指定單元(205),用于參考版本信息存儲單元(207),以指定對應(yīng)于請求方的用戶(13)的版本;對象管理單元(241),用于使用默認加載器(223)和差分加載器(233)的指定版本來生成適用于用戶(13)的版本的服務(wù)對象并且執(zhí)行處理;以及提供單元(243),用于向用戶(13)提供服務(wù)。
文檔編號G06Q10/00GK102349052SQ201080011438
公開日2012年2月8日 申請日期2010年3月29日 優(yōu)先權(quán)日2009年3月30日
發(fā)明者島村榮 申請人:日本電氣株式會社