專利名稱:一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面的方法及系統(tǒng)的制作方法
一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面的方法及系統(tǒng)技術(shù)領(lǐng)域本申請涉及軟件開發(fā)領(lǐng)域,尤其涉及一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài) 頁面的方法及系統(tǒng)。
背景技術(shù):
隨著SOA (Service-Oriented Architecture,面向服務(wù)的架構(gòu))的不斷成熟, REST (Representational State Tmnsfer,表述性狀態(tài)遷移)風(fēng)格的資源調(diào)用深入 人心,使得Open API ( Open Application Program Interface,開》文性應(yīng)用編程接 口 )逐漸成為互聯(lián)網(wǎng)新興資源。傳統(tǒng)的互聯(lián)網(wǎng)軟件企業(yè)也開始嘗試新角色, 作為服務(wù)提供商更加開放自身服務(wù)的資源,擴(kuò)大自身數(shù)據(jù)的社會化作用,并 為網(wǎng)站的發(fā)展提供了新的開放模式。Web2.0時(shí)代的到來,也造就了許多利用 網(wǎng)絡(luò)服務(wù)資源的ISV (Independent Software Vendor,獨(dú)立軟件供應(yīng)商),他們 針對客戶的需求,將不同ISP (Internet Service Provider,互聯(lián)網(wǎng)服務(wù)提供商) 提供的服務(wù)組合在一起,設(shè)計(jì)出豐富多樣的交互式應(yīng)用,并產(chǎn)生了聚合后的 創(chuàng)新效應(yīng)。在申請?zhí)枮?00810126112.6的中國專利申請中公開了 一種服務(wù)集成平臺 系統(tǒng)。服務(wù)集成平臺系統(tǒng)包括服務(wù)集成平臺、ISP和ISV。請參閱圖l,其為一 種服務(wù)集成平臺系統(tǒng)的實(shí)施示例圖。在該實(shí)施中,月良務(wù)集成平臺系統(tǒng)以SIP(Service Integration Platform,服務(wù)互聯(lián)平臺)為基礎(chǔ)進(jìn)行構(gòu)建SIP分別連接ISV 和ISP,具體連接時(shí)可以通過因特網(wǎng)或者其他網(wǎng)絡(luò)形式進(jìn)行連接。用以示意的 ISV在圖中是由兩臺EndUser (終端用戶)及ISV APP(ISV Application,獨(dú)立軟 件開發(fā)商應(yīng)用)構(gòu)成;用以示意的ISP是由兩臺API Server ( API服務(wù)器)構(gòu)成; ISV應(yīng)用可以為普通的互聯(lián)網(wǎng)應(yīng)用,也可以是客戶端桌面應(yīng)用,例如通過HTTP(Hyper Text Transfer Protocol,超文本傳送協(xié)議)訪問就可以和SIP建立起交互 通道,而SIP和ISP之間也是可以通過HTTP的方式建立連接,但是在實(shí)際應(yīng)用 時(shí)考慮到安全等因素,可以使用SSL (Secure Socket Layer,安全套接層)對 HTTP來做安全保證或通過專線^式來做安全保護(hù)。在SIP的服務(wù)部署中,SIP硬件方面可以主要包括了兩個(gè)部分API Route Server(應(yīng)用編程接口路由服務(wù) 器)和定時(shí)任務(wù)服務(wù)器。也就是說,服務(wù)集成平臺是提供給ISP和ISV之間數(shù)據(jù) 互聯(lián)互通的載體。在這個(gè)平臺上,ISP的資源和服務(wù)在開放的環(huán)境中深度集 成和充分融合,為ISV接入第三方服務(wù),快速接入軟件互聯(lián)平臺提供便利, 從而產(chǎn)生更高的商業(yè)價(jià)值。服務(wù)集成平臺為ISP的API月良務(wù)提供完整的安全、 計(jì)費(fèi)、授權(quán)的統(tǒng)一策略。ISP在自助服務(wù)中心完成對自有服務(wù)實(shí)時(shí)監(jiān)控、發(fā) 布、測試、路由等管理工作。服務(wù)集成平臺可以和多個(gè)ISP相連,也可以僅和一個(gè)ISP相連。為了讓ISV 獲知ISP提供的Open API,通常服務(wù)集成平臺或ISP需要提供Open API文檔。 目前,服務(wù)集成平臺或ISP將OpenAPI文檔內(nèi)容放置在數(shù)據(jù)庫中,其服務(wù)器中 的頁面生成器生成Open API文檔網(wǎng)頁。ISV用戶通過其本端的瀏覽器訪問Open API文檔網(wǎng)頁即可獲知ISP提供的OPEN API文檔信息。以服務(wù)集成平臺提供多 家ISP的Open API文檔為例,頁面生成器生成Open API文檔網(wǎng)頁至少包括ISP、 每家ISP說明、每家ISP提供的類目、每一類目說明。ISP、每家ISP說明、每家 ISP提供的類目及每一類目說明進(jìn)行修改時(shí),按理論上分析來看,都需要進(jìn)行 頁面生成操作,若每一次修改就觸發(fā)整個(gè)Open API文檔所有頁面生成操作, 則當(dāng)修改比較頻繁時(shí),頁面生成操作就很頻繁,其大量占有服務(wù)器的資源。 若定周期進(jìn)行頁面生成操作,則ISV用戶看到的Open API文檔網(wǎng)頁信息很有可 能不是最新的OpenAPI文檔信息,實(shí)時(shí)性不夠。發(fā)明內(nèi)容本申請的目的在于提供一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面的方法, 以解決現(xiàn)有技術(shù)中靜態(tài)頁面更新過程中占用資源多或?qū)崟r(shí)性不夠的技術(shù)問題。本申請的另 一 目的在于提供一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面的系 統(tǒng),以解決現(xiàn)有技術(shù)中靜態(tài)頁面更新過程中占用資源多或?qū)崟r(shí)性不夠的技術(shù) 問題。本申請?zhí)峁┮环N服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面的方法,用以在服務(wù) 集成平臺上更新網(wǎng)絡(luò)服務(wù)提供商ISP提供至ISV用戶以網(wǎng)頁形式表現(xiàn)的Open6API文檔,包括(1 )分解Open API文檔中靜態(tài)頁面生成任務(wù),設(shè)置以子頁面生成任務(wù)為單 元的l爭態(tài)頁面生成文件;(2) 子頁面的實(shí)時(shí)數(shù)據(jù)被ISP修改后,設(shè)置該實(shí)時(shí)數(shù)據(jù)對應(yīng)的修改標(biāo)志;(3) 當(dāng)頁面^皮訪問時(shí),執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù),所 述該些子頁面為有修改標(biāo)志之實(shí)時(shí)數(shù)據(jù)所在的子頁面。較佳地,步驟(2)中設(shè)置該實(shí)時(shí)數(shù)據(jù)對應(yīng)的修改標(biāo)志為保存該實(shí)時(shí)數(shù)據(jù)的 最后改變時(shí)間。步驟(3)進(jìn)一步包括實(shí)時(shí)數(shù)據(jù)的最后改變時(shí)間與上一次頁面 生成時(shí)間進(jìn)行比較,若前者時(shí)間晚于后者時(shí)間,則認(rèn)為該實(shí)時(shí)數(shù)據(jù)為已修改 的實(shí)時(shí)數(shù)據(jù),并且保存執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù)的時(shí)間 作為上一次頁面生成時(shí)間。較佳地,步驟(3)還包括判斷能否生成該文件的鎖文件,若能,則生成 臨時(shí)文件,并將臨時(shí)文件替換新的靜態(tài)頁面生成文件,后刪除該文件的鎖文 件。本申請還公開一種服務(wù)集成平臺系統(tǒng),用以在服務(wù)集成平臺上更新網(wǎng)絡(luò) 服務(wù)提供商ISP提供至ISV用戶以網(wǎng)頁形式表現(xiàn)的Open API文檔,所述服務(wù) 集成平臺進(jìn)一步包括,數(shù)據(jù)庫,包括頁面生成文件存儲單元用于保存以子頁面生成任務(wù)為單元的靜態(tài) 頁面生成文件;實(shí)時(shí)數(shù)據(jù)存儲單元,用于存儲實(shí)時(shí)數(shù)據(jù)及實(shí)時(shí)數(shù)據(jù)修改標(biāo)記; 服務(wù)器,其包括實(shí)時(shí)數(shù)據(jù)修改處理單元,用于實(shí)時(shí)數(shù)據(jù)被ISP修改后,在實(shí)時(shí)數(shù)據(jù) 存儲單元中個(gè)性對應(yīng)的修改標(biāo)志;頁面生成單元,用于頁面被訪問時(shí),執(zhí)行靜態(tài)頁面生成文件中該些 子頁面生成任務(wù)后生成該些子頁面。與現(xiàn)有技術(shù)相比,本申請具有以下優(yōu)點(diǎn)首先,本申請的更新是以用戶訪問網(wǎng)頁作為觸發(fā)條件,實(shí)時(shí)性強(qiáng)且不需要將服務(wù)集成平臺相關(guān)的所有OPEN API網(wǎng)頁一起更新,占用的資源少。其次,申請人采取了文件鎖的機(jī)制,生成頁面的時(shí)候先生成一個(gè)臨時(shí)文 件,然后取得該臨時(shí)文件的鎖,當(dāng)取到鎖后,生成相應(yīng)頁面的臨時(shí)文件,并 在臨時(shí)文件生成以后替換掉正式文件,再釋放鎖。這樣,保證了并發(fā)情況下 靜態(tài)頁面內(nèi)容的準(zhǔn)確性,對用戶來說是透明的。如果試圖拿鎖的用戶失敗也 只是看到的是舊的頁面,再次訪問頁面應(yīng)該就是最新的頁面內(nèi)容了。因?yàn)榍?面成功拿到鎖的用戶已經(jīng)生成了最新的頁面了 。
圖1為 一種服務(wù)集成平臺系統(tǒng)的實(shí)施示例圖; 圖2為本申請一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面方法的流程圖; 圖3為為服務(wù)集成平臺系統(tǒng)中OPENAPI文檔的網(wǎng)頁示例圖。 圖4為整個(gè)0pen API文檔的網(wǎng)頁顯示任務(wù)將其分解的示例流程圖; 圖5是一種服務(wù)集成平臺的原理結(jié)構(gòu)示意圖。
具體實(shí)施方式
結(jié)合附圖,具體說明本申請。請參閱圖2,其為一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面一實(shí)施方法的流 程圖。它用以更新網(wǎng)絡(luò)服務(wù)提供商ISP提供至ISV用戶以網(wǎng)頁形式表現(xiàn)的Open API文檔,包括S110:分解Open API文檔之靜態(tài)頁面生成任務(wù),-沒置以子頁面生成任務(wù) 為單元的靜態(tài)頁面生成文件。為了后續(xù)說明方便,申請人把以網(wǎng)頁形式表現(xiàn)的Open API文檔稱之為 Open API文檔網(wǎng)頁。網(wǎng)頁可以是動態(tài)頁面形式存在,也可以是以靜態(tài)頁面存 在。在本申請中,Open API文檔網(wǎng)頁是以靜態(tài)頁面方式存在的。申請人把以生成這些靜態(tài)頁面的代碼稱之為靜態(tài)頁面生成^f壬務(wù)。在本申請中,生成 該些靜態(tài)頁面的代碼是設(shè)置在靜態(tài)頁面生成文件中。請參閱圖3,其為服務(wù)集成平臺系統(tǒng)中OPENAPI文檔網(wǎng)頁示例圖。在該示例網(wǎng)頁中,上方顯示的是ISP列表,即該服務(wù)集成平臺提供的OPEN API文檔中該平臺所連接的ISP個(gè)數(shù)及每一ISP名稱。當(dāng)服務(wù)集成平臺接收到網(wǎng)頁中某一ISP名稱被單擊時(shí),上方顯示的ISP列表 不變,下方左側(cè)顯示ISP所包含類目樹信息、下方右側(cè)顯示ISP描述信息。即, 當(dāng)服務(wù)集成平臺接收到某一ISP名稱被單擊時(shí)顯示的網(wǎng)頁,可以分為三個(gè)子頁 面,上方用于顯示ISP列表的子頁面,下方左側(cè)用于顯示ISP所包含類目樹信息 的子頁面,下方右側(cè)用于顯示ISP描述信息的子頁面。當(dāng)服務(wù)集成平臺接收到左側(cè)某一類目被單擊時(shí),上方顯示的ISP列表不 變,下方左側(cè)顯示ISP所包含的類目信息以及該類目所包含的API接口信息。 在左側(cè)該類目下顯示其所包含的API接口信息,右側(cè)顯示該類目描述。即,當(dāng) 服務(wù)集成平臺接收到左側(cè)某一類目被單擊時(shí)顯示的頁面,可以分為上方子頁 面,下方左側(cè)子頁面,下方右側(cè)子頁面。當(dāng)服務(wù)集成平臺接收到某一API接口被單擊時(shí),下方右側(cè)顯示該API接口 的描述信息。當(dāng)服務(wù)集成平臺接收到某一API接口被單擊時(shí)顯示的頁面,可以 分為上方子頁面、下方左側(cè)子頁面,下方右側(cè)子頁面。上述也僅是一種網(wǎng)頁顯示的示例,并非用于局限本申請,如何顯示網(wǎng)頁, 可以根據(jù)具體設(shè)計(jì)情況來設(shè)定。從上述可知,整個(gè)OPEN API文檔網(wǎng)頁所涉及的頁面組織結(jié)構(gòu)通常包括ISP 列表、ISP描述、類目樹、類目描述、API接口描述。API接口描述包括API參 數(shù)及如何使用該API參數(shù)說明。ISP列表是用于顯示服務(wù)集成平臺所包含的ISP 個(gè)數(shù)及每一個(gè)ISP名稱。ISP描述是用于顯示該ISP對應(yīng)的描述信息。類目樹是描述是用于顯示該類目的描述信息。以ISP列表為例,本實(shí)例包括"阿里軟件,,、"淘寶網(wǎng)"兩個(gè)ISP列表項(xiàng), "阿里軟件"、淘寶網(wǎng)"為ISP列表的實(shí)時(shí)數(shù)據(jù)。實(shí)時(shí)lt據(jù)通常是指動態(tài)變化 的數(shù)據(jù)信息。實(shí)時(shí)數(shù)據(jù)主要包括兩個(gè)部分內(nèi)容, 一個(gè)部分內(nèi)容是名稱,比如ISP 列表名稱。第二個(gè)部分內(nèi)容為具體的信息,如接口信息等。組織結(jié)構(gòu),其頁面生成處理大致相同,只 不過對應(yīng)的實(shí)時(shí)數(shù)據(jù)是不相同。舉個(gè)例子來說,不管哪一ISP名字被選中,網(wǎng)頁顯示操作都是相同,比如說"下方左側(cè)顯示該ISP所包含類目樹信息、下方右側(cè)顯示ISP描述信息",不 過是顯示的具體實(shí)時(shí)數(shù)據(jù)不同而已。即,顯示該ISP所包含的具體的類目樹信 息不同,下方右側(cè)顯示具體的ISP描述信息不同。為此,申請人想到,服務(wù)集成平臺將整個(gè)OpenAPI文檔之靜態(tài)頁面生成任 務(wù)進(jìn)行其分解(請參閱圖4):首先進(jìn)行S210,針對Open API文檔網(wǎng)頁的頁面組織結(jié)構(gòu)設(shè)置對應(yīng)類型的結(jié) 構(gòu)生成模板。根據(jù)OPEN API文檔的網(wǎng)頁的設(shè)計(jì)情況,將OPEN API文檔的網(wǎng)頁所涉及 的頁面組織結(jié)構(gòu)進(jìn)行歸納總結(jié),比如包括ISP列表、ISP描述、類目樹、類目描 述、API接口描述,再設(shè)置對應(yīng)類型的結(jié)構(gòu)生成模板。比如設(shè)置ISP列表生成 模板、ISP描述生成模板、類目樹生成模板、類目描述生成模板、API接口描 述生成模板。還是以上面的實(shí)例為例,當(dāng)服務(wù)集成平臺接收到某一ISP名稱被 單擊時(shí)顯示的網(wǎng)頁,需要顯示三個(gè)子頁面,上方用于顯示ISP列表的子頁面, 下方左側(cè)用于顯示ISP所包含類目樹信息的子頁面,下方右側(cè)用于顯示ISP描述 信息的子頁面。上方用于顯示ISP列表的子頁面即可調(diào)用ISP列表生成模板,下 方左側(cè)用于顯示ISP所包含類目樹信息的子頁面,即可調(diào)用類目樹生成才莫板, 下方用于顯示右側(cè)顯示ISP描述信息的子頁面,即可調(diào)用ISP描述生成模板。其次進(jìn)行S220:設(shè)置用于存儲實(shí)時(shí)數(shù)據(jù)的實(shí)時(shí)數(shù)據(jù)存儲單元。模板和實(shí)時(shí)數(shù)據(jù)相結(jié)合才能生成頁面。因此,除了各式模板之外,還需 要預(yù)先獲知具體的實(shí)時(shí)數(shù)據(jù)。為此,服務(wù)集成平臺預(yù)先開辟數(shù)據(jù)區(qū)來存儲實(shí) 時(shí)數(shù)據(jù)。實(shí)時(shí)數(shù)據(jù)通常是由ISP提供的??梢砸訶ML格式來保存實(shí)時(shí)數(shù)據(jù)。在本實(shí)例中,通過設(shè)置若干表格來分類保存實(shí)時(shí)數(shù)據(jù)M1:設(shè)置用于保存服務(wù)集成平臺系統(tǒng)所包含ISP信息的ISP表。ISP表中 可以包括ISP序號、ISP名稱、ISP ID、 ISP描述信息、發(fā)布時(shí)間、修改時(shí)間等字段。M2:設(shè)置用于保存類目信息的類目表。類目表可以包括類目序號、類目 名稱、類目ID、類目所屬的ISP信息、類目描述信息、發(fā)布時(shí)間、修改時(shí)間 等字段。類目表通過類目所屬的ISP信息(如ISPID)建立與ISP表的關(guān)聯(lián)。M3:設(shè)置用于保存API接口信息的API接口表。API接口表可以包括 API接口序號、API接口名稱、API接口ID、 API接口所屬的類目信息、API 接口信息等字段。API接口表中通過API接口所屬的類目信息(如類目ID) 建立與類目表的關(guān)聯(lián)。當(dāng)API接口信息所包含的參數(shù)信息等內(nèi)容比較多時(shí),可以單獨(dú)設(shè)置一用 于保存API參數(shù)信息的API參數(shù)表,所述API參數(shù)表通過API接口信息(如 API接口 ID )與API接口表進(jìn)行關(guān)聯(lián)。本實(shí)例中,是通過若干個(gè)表格來保存實(shí)時(shí)數(shù)據(jù),當(dāng)然,也可以僅設(shè)置一 個(gè)表格來保存實(shí)時(shí)數(shù)據(jù)。再次進(jìn)行S230:確定子頁面及子頁面中包含的實(shí)時(shí)凝:據(jù);確定子頁面包括確定ISP表子頁面及每個(gè)ISP描述子頁面、每個(gè)ISP下的 類目樹子頁面及每個(gè)類目的類目描述子頁面和API接口子頁面。確定子頁面后,就可以確定子頁面中包含哪些實(shí)時(shí)數(shù)據(jù)。 比如,ISP表子頁面都可以調(diào)用ISP列表生成模板,只不過每個(gè)子頁面中 調(diào)用的實(shí)時(shí)數(shù)據(jù)不同。還是以圖3為例,本文檔包括"阿里軟件"和"淘寶 網(wǎng)"兩個(gè)ISP列表,貝'J "阿里軟件"ISP表子頁面中"ISP名稱"這個(gè)實(shí)時(shí)數(shù) 據(jù)為"阿里軟件","淘寶網(wǎng),,ISP表子頁面中"ISP名稱"這個(gè)實(shí)時(shí)數(shù)據(jù)為 "淘寶網(wǎng),,。實(shí)時(shí)數(shù)據(jù)通過訪問ISP表/類目表/API接口表等來獲得。 最后進(jìn)行S240:構(gòu)建API文檔網(wǎng)頁之靜態(tài)頁面生成文件。在S230中已確定子頁面及子頁面中包含的實(shí)時(shí)數(shù)據(jù),再獲知各個(gè)子頁面 的觸發(fā)條件,即可構(gòu)建API文檔網(wǎng)頁之靜態(tài)頁面生成文件。比如,ISP表子頁面下包括一個(gè)類目樹子頁面,每個(gè)類目樹下鏈接一個(gè)類 目描述子頁面,每個(gè)類目下面還鏈接的若干個(gè)API接口等。當(dāng)某一ISP名稱被單擊(即子頁面的觸發(fā)條件)時(shí),上方顯示的ISP列 表不變,上方用于顯示ISP列表的子頁面不變,下方左側(cè)顯示ISP所包含類目 樹信息的子頁面,下方右側(cè)顯示ISP描述信息的子頁面。S120:實(shí)時(shí)數(shù)據(jù)被ISP修改后,設(shè)置該實(shí)時(shí)數(shù)據(jù)對應(yīng)的修改標(biāo)志。 S120的修改標(biāo)志可以是一個(gè)邏輯符號,表示是否修改過。 在本申請中,也可以設(shè)置該實(shí)時(shí)數(shù)據(jù)對應(yīng)的修改標(biāo)志為保存該實(shí)時(shí)數(shù)據(jù) 的最后改變時(shí)間。在ISP表中設(shè)置一做為ISP修改標(biāo)志的ISP修改標(biāo)志字段,所述字段用于 記錄當(dāng)該ISP信息發(fā)生改變的最后修改時(shí)間;在類目表中還設(shè)置一做為類目 修改標(biāo)志的類目修改標(biāo)志字段,所述字段用于記錄當(dāng)該類目中類目相關(guān)信息 發(fā)生改變的最后時(shí)間。如何修改類目修改標(biāo)志字段呢?申請人是通過以下方式來完成的當(dāng)API接口信息發(fā)生改變時(shí),記錄該API接口所屬類目的修改時(shí)間字段 的值為當(dāng)前改變時(shí)間;確保該時(shí)間大于該接口所屬類目的發(fā)布時(shí)間字段的值。再比如,當(dāng)類目的說明信息被修改后,更新修改時(shí)間字段,確保修改時(shí) 間字段的值大于發(fā)布時(shí)間字段的值。S130:當(dāng)頁面凈皮訪問時(shí),執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù) 后生成該些子頁面。在本實(shí)例中,所述該些子頁面為已修改之實(shí)時(shí)數(shù)據(jù)所在的子頁面。當(dāng)頁面被訪問時(shí),去查找ISP表、類目表等中是否有修改時(shí)間字段的值 大于發(fā)布時(shí)間字段的值的記錄,如果有記錄表明ISP修改過信息,并且通過 了審核,需要執(zhí)行靜態(tài)頁面生成文件該些子頁面生成任務(wù)后重新生成最新的 文檔。當(dāng)生成完最新的文檔以后,還需要修改ISP表和類目表,使發(fā)布時(shí)間 大于修改時(shí)間,這樣再次訪問文檔的時(shí)候不需要再生成了 。執(zhí)行該靜態(tài)頁面生成文件生成Open API文檔網(wǎng)頁還包4舌判斷能否生成該文件的鎖文件,若能,則生成臨時(shí)文件,并將臨時(shí)文件替換新的靜態(tài)頁面生成文件后刪除該文件的鎖文件。文件用加鎖工具進(jìn)行加 鎖處理,處理后的文件稱之為鎖文件。判斷能否生成該文件的鎖文件進(jìn)一步 包括判斷該文件的鎖文件是否存在,若存在,則不能生成,若不存在,則能 生成。上述鎖文件的處理方式,能夠保證并發(fā)情況下靜態(tài)頁面內(nèi)容的準(zhǔn)確性。 當(dāng)某個(gè)用戶訪問頁面時(shí),先去判斷該靜態(tài)頁面生成文件的鎖文件是否存在,若存在,則不進(jìn)行步驟S130,若不存在,才進(jìn)行步驟S130,執(zhí)行靜態(tài)頁面生 成文件中該些子頁面生成任務(wù)。即某個(gè)用戶訪問頁面時(shí),鎖文件存在的情況 下,看到的是未更新的舊頁面。只有鎖文件不存在的情況下,才執(zhí)行靜態(tài)頁 面生成任務(wù),生成新的頁面。此時(shí)才看到剛更新的頁面。這種處理方式很好 解決了同時(shí)接收到好幾個(gè)用戶的訪問請求時(shí),服務(wù)集成平臺如何進(jìn)行步驟 S130的搡作。并且,每個(gè)Open API發(fā)布之前,后臺管理人員還會進(jìn)行審核。請參閱圖5,其為本申請服務(wù)集成平臺的原理結(jié)構(gòu)示意圖。服務(wù)集成平臺 用以在服務(wù)集成平臺上更新網(wǎng)絡(luò)服務(wù)提供商ISP提供至ISV用戶以網(wǎng)頁形式 表現(xiàn)的Open API文檔。該服務(wù)集成平臺包括凄t據(jù)庫11和服務(wù)器12。數(shù)據(jù)庫 ll可以是圖1中的計(jì)費(fèi)DB,也可以是額外設(shè)置的數(shù)據(jù)庫。服務(wù)器12可以是 指圖1中API Route Server,也可以是定時(shí)任務(wù)服務(wù)器,還可以是新增的服務(wù) 器。其中,數(shù)據(jù)庫ll,包括頁面生成文件存儲單元111:用于保存以子頁面生成任務(wù)為單元的靜 態(tài)頁面生成文件;實(shí)時(shí)數(shù)據(jù)存儲單元112,用于存儲實(shí)時(shí)數(shù)據(jù)及實(shí)時(shí)數(shù)據(jù)修改標(biāo)記; 服務(wù)器12,其包括實(shí)時(shí)it據(jù)i務(wù)改處理單元121 ,用于實(shí)時(shí)數(shù)據(jù);波ISP修改后,在實(shí)時(shí) 數(shù)據(jù)存儲單元中個(gè)性對應(yīng)的修改標(biāo)志;頁面生成單元122,用于頁面被訪問時(shí),執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù)后生成該些子頁面;靜態(tài)頁面任務(wù)分解單元123,用于分解Open API文檔中靜態(tài)頁面生 成任務(wù),并將設(shè)置的靜態(tài)頁面生成文件保存在頁面生成文件存儲單元中。服務(wù)集成平臺除了上述數(shù)據(jù)庫11和服務(wù)器12之外,還應(yīng)該包括與ISV、 ISP交互的接口,這是現(xiàn)有技術(shù)部分,在此就不再詳說。實(shí)時(shí)數(shù)據(jù)存儲單元112進(jìn)一步包括用于保存服務(wù)集成平臺系統(tǒng)所包含ISP信息的ISP表;用于保存類目信息的類目表,所述類目表通過類目所屬的ISP信息建立 與ISP表的關(guān)聯(lián);用于保存API接口信息的A.PI接口表。在ISP表/類目表/API接口表中還設(shè)置一用于保存ISP/類目/API接口最后 改變時(shí)間的字段。這樣,實(shí)時(shí)數(shù)據(jù)的最后改變時(shí)間與上一次頁面生成時(shí)間進(jìn) 行比較,若前者時(shí)間晚于后者時(shí)間,則認(rèn)為該實(shí)時(shí)數(shù)據(jù)為已修改的實(shí)時(shí)數(shù)據(jù), 頁面生成單元122執(zhí)行文件中實(shí)時(shí)數(shù)據(jù)已修改的子頁面生成任務(wù)生成子頁面, 并且保存執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù)的時(shí)間作為上一次頁 面生成時(shí)間。上述的單元通常是指邏輯單元,并且服務(wù)器12上的單元通??梢杂密浖?來實(shí)現(xiàn),本申請所提供的這些單元僅僅是為了說明,而并非用于局限本申請。以上公開的僅為本申請的幾個(gè)具體實(shí)施例,但本申請并非局限于此,任何 本領(lǐng)域的技術(shù)人員能思之的變化,都應(yīng)落在本申請的保護(hù)范圍內(nèi)。
權(quán)利要求
1、一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面的方法,用以在服務(wù)集成平臺上更新網(wǎng)絡(luò)服務(wù)提供商ISP提供至ISV用戶以網(wǎng)頁形式表現(xiàn)的Open API文檔,其特征在于,包括(1)分解Open API文檔之靜態(tài)頁面生成任務(wù),設(shè)置以子頁面為單元的靜態(tài)頁面生成文件;(2)子頁面的實(shí)時(shí)數(shù)據(jù)被ISP修改后,設(shè)置對應(yīng)的修改標(biāo)志;(3)當(dāng)頁面被訪問時(shí),執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù),所述該些子頁面為有修改標(biāo)志之實(shí)時(shí)數(shù)據(jù)所在的子頁面。
2、 如權(quán)利要求l所述的方法,其特征在于,步驟(2)中設(shè)置對應(yīng)的修改標(biāo)志為保存該實(shí)時(shí)數(shù)據(jù)的最后改變時(shí)間。
3、 如權(quán)利要求2所述的方法,其特征在于,步驟(3)進(jìn)一步包括實(shí)時(shí)數(shù)據(jù)的最后改變時(shí)間與上一次頁面生成時(shí)間進(jìn) 行比較,若前者時(shí)間晚于后者時(shí)間,則認(rèn)為該實(shí)時(shí)數(shù)據(jù)為已修改的實(shí)時(shí)數(shù)據(jù), 并且保存執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù)的時(shí)間作為上一次頁 面生成時(shí)間。
4、 如權(quán)利要求1或3所述的方法,其特征在于,步驟(3)還包括判斷能否生成該文件的鎖文件,若能,則生成臨時(shí)文件,并將臨時(shí)文件 替換新的靜態(tài)頁面生成文件后刪除該文件的鎖文件。
5、 如權(quán)利要求4所述的方法,其特征在于,判斷能否生成該文件的鎖文 件進(jìn)一步包括判斷該文件的鎖文件是否存在,若存在,則不能生成,若不存 在,則能生成。
6、 如權(quán)利要求l所述的方法,其特征在于,步驟(l)進(jìn)一步包括 Al:針對Open API文檔網(wǎng)頁的頁面組織結(jié)構(gòu)設(shè)置對應(yīng)類型的結(jié)構(gòu)生成模板;A2:設(shè)置用于存儲實(shí)時(shí)數(shù)據(jù)的實(shí)時(shí)數(shù)據(jù)存儲單元; A3:確定子頁面及子頁面中包含的實(shí)時(shí)數(shù)據(jù);A4:構(gòu)建所述Open API文檔之靜態(tài)頁面生成文件。
7、 如權(quán)利要求6所述的方法,其特征在于,Al i殳置結(jié)構(gòu)生成模板進(jìn)一 步包括設(shè)置ISP列表生成模板、類目樹生成模板、ISP描述生成模板、類目描 述生成模板以及API接口生成模板。
8、 如權(quán)利要求6或7所述的方法,其特征在于,A2進(jìn)一步包括設(shè)置用于保存服務(wù)集成平臺系統(tǒng)所包含ISP信息的ISP表;設(shè)置用于保存類目信息的類目表,所述類目表通過類目所屬的ISP信息 建立與ISP表的關(guān)聯(lián);設(shè)置用于保存API接口信息的API接口表,所述API接口表中通過API 接口所屬的類目信息建立與類目表的關(guān)聯(lián)。
9、 如權(quán)利要求8所述的方法,其特征在于,還包括設(shè)置用于保存API 參數(shù)信息的API參數(shù)表,所述API參數(shù)表通過API接口信息與API接口表進(jìn)行關(guān)聯(lián)。
10、 如權(quán)利要求9所述的方法,其特征在于,確定子頁面進(jìn)一步包括 確定ISP表子頁面及每個(gè)ISP描述子頁面、每個(gè)ISP下的類目樹子頁面及每個(gè) 類目的類目描述子頁面和API接口子頁面。
11、 如權(quán)利要求10所述的方法,其特征在于,A2進(jìn)一步包括在ISP 表/類目表/API接口表中還設(shè)置一用于保存ISP/類目/API接口最后改變時(shí)間的字段。
12、 一種服務(wù)集成平臺,用以在服務(wù)集成平臺上更新網(wǎng)絡(luò)服務(wù)提供商ISP 提供至ISV用戶以網(wǎng)頁形式表現(xiàn)的OpenAPI文檔,其特征在于,所述服務(wù)集 成平臺進(jìn)一步包括,數(shù)據(jù)庫,包括頁面生成文件存儲單元用于保存以子頁面生成任務(wù)為單元的靜態(tài) 頁面生成文件;實(shí)時(shí)數(shù)據(jù)存儲單元,用于存儲實(shí)時(shí)數(shù)據(jù)及實(shí)時(shí)數(shù)據(jù)修改標(biāo)記; 服務(wù)器,其包括實(shí)時(shí)數(shù)據(jù)修改處理單元,用于實(shí)時(shí)數(shù)據(jù)被ISP修改后,在實(shí)時(shí)數(shù)據(jù)存儲單元中個(gè)性對應(yīng)的修改標(biāo)志;頁面生成單元,用于頁面被訪問時(shí),執(zhí)行靜態(tài)頁面生成文件中該些 子頁面生成任務(wù)后生成該些子頁面。
13、 如權(quán)利要求12所述的系統(tǒng),其特征在于,服務(wù)器還包括靜態(tài)頁面任 務(wù)分解單元,用于分解Open API文檔中靜態(tài)頁面生成任務(wù),并將設(shè)置的靜態(tài) 頁面生成文件保存在頁面生成文件存儲單元中。
14、 如權(quán)利要求12所述的系統(tǒng),其特征在于,實(shí)時(shí)數(shù)據(jù)存儲單元進(jìn)一步 包括用于保存服務(wù)集成平臺系統(tǒng)所包含ISP信息的ISP表;用于保存類目信息的類目表,所述類目表通過類目所屬的ISP信息建立 與ISP表的關(guān)聯(lián);用于保存API接口信息的API接口表。
15、 如權(quán)利要求14所述的系統(tǒng),其特征在于,在ISP表/類目表/API接口 表中還設(shè)置一用于保存ISP/類目/API接口最后改變時(shí)間的字段。
全文摘要
一種服務(wù)集成平臺系統(tǒng)中更新靜態(tài)頁面的方法,用以更新網(wǎng)絡(luò)服務(wù)提供商ISP提供至ISV用戶以網(wǎng)頁形式表現(xiàn)的Open API文檔,包括(1)分解OpenAPI文檔中靜態(tài)頁面生成任務(wù),設(shè)置以子頁面生成任務(wù)為單元的靜態(tài)頁面生成文件;(2)子頁面的實(shí)時(shí)數(shù)據(jù)被ISP修改后,設(shè)置該實(shí)時(shí)數(shù)據(jù)對應(yīng)的修改標(biāo)志;(3)當(dāng)頁面被訪問時(shí),執(zhí)行靜態(tài)頁面生成文件中該些子頁面生成任務(wù)后生成該些子頁面,所述該些子頁面為已修改之實(shí)時(shí)數(shù)據(jù)所在的子頁面。本申請還提供該文件的鎖文件功能。本申請的更新是以用戶訪問網(wǎng)頁作為觸發(fā)條件,實(shí)時(shí)性強(qiáng)且不需要將服務(wù)集成平臺相關(guān)的所有OPEN API網(wǎng)頁一起更新,并且占用的資源少。
文檔編號G06F9/44GK101599018SQ200910159418
公開日2009年12月9日 申請日期2009年7月3日 優(yōu)先權(quán)日2009年7月3日
發(fā)明者洪文其, 肖建濤 申請人:阿里巴巴集團(tuán)控股有限公司