官术网_书友最值得收藏!

1.2 服務互聯網運行環境需求與挑戰

對服務互聯網的研究囊括了總體體系結構、設計、運行和重構等各方面,本書則主要聚焦其中一個方面,也是其中一個關鍵方面,即服務互聯網運行機制。服務互聯網運行環境需要滿足如下需求。

(1)服務互聯網運行環境需要支持復雜服務網絡的分布式運行。該服務網絡依托一個第四方服務平臺(集成服務提供商、服務用戶及服務中介),支持服務中介利用多方計算資源提供新型服務方案,服務方案的物理分布對服務中介是透明的。以科技服務業為例,新型科技服務方案是指根據用戶的需求,將各領域、各行業的科技服務資源匯聚在一起,通過多個參與方的協同來完成科技服務,滿足用戶的需求。服務互聯網運行環境需支持新型服務方案的部署和運行。由于不同的參與方可能有自己的數據中心或計算資源,方案的運行是中介利用多個參與方的計算資源協同完成的,因此,服務互聯網運行環境是一個分布式的服務互聯網部署運行環境。在這個環境中,服務方案的物理分布對服務中介是透明的,運行環境的管理者(往往是第四方科技服務中介)可以利用多方計算資源對服務方案的運行進行優化。

(2)服務互聯網運行環境中服務方案的部署運行需要滿足各方對資源的約束。服務方案的部分片段由于數據和流程保護等原因,具有天然的業務約束,如只能部署在特定參與方且由該參與方負責片段運行的控制、參與方對服務方案運行所占用計算資源的約束、用戶對服務質量的需求等。

(3)服務互聯網運行環境需要支持多租戶的運行、管理及監控,保障服務方案運行的可靠性,優化運行效率。在服務互聯網運行環境中,服務提供者(如第三方中介)是以租戶為單位、以軟件即服務的模式使用服務互聯網運行環境的。在運行環境中,運行的服務方案具有多樣性,既有實例密集型的,如在醫療養老服務領域,病人或老人用戶以千萬計,許多服務(如診斷服務)都需要為每個用戶生成一個服務方案的實例;也有數據密集型的,如科技服務中的科技檢驗檢測服務往往涉及大量實驗數據的存儲和處理。在多樣性的服務方案部署運行時,需要利用其特點,有針對性地采用不同的優化手段利用資源,并且在各參與方的計算環境或服務方案變化時,持續進行優化。

(4)服務方案運行時重構、智能交互與交付。在現實世界中,存在大量無法預先進行完整定義的服務方案。例如,科技服務中的技術預見服務,由于涉及深入的專業知識,任務本身具有很大的不確定性。其往往需要科技咨詢服務人員、相關領域的多位專家協同,在服務方案運行的過程中,根據服務方案運行的中間結果,以探索的方式來調整后續執行的活動或服務。調整的中間結果往往又需要反饋到系統中,再由用戶根據系統反饋結果進一步調整,如此反復迭代,逐步完善服務方案的執行,最終生成服務方案的交付物。

針對上述四個方面的需求,本書主要從服務互聯網運行環境的體系結構、服務資源的組織和管理、服務的智能交互與交付、服務方案的分布式調度與可靠運行、服務方案的運行時演化方法五個方面關注服務互聯網運行環境。

在服務互聯網運行環境的體系結構方面,在服務互聯網的參考體系結構的基礎上,本書聚焦探討服務互聯網運行架構的原理和實現。在早期分布式環境下,系統一般是C(Client)/S(Server)體系結構,在運行時,服務器通常采用緊耦合的消息應答方式來為客戶端提供服務。由于在分布式環境下,緊耦合的消息應答方式不能對程序員隱藏分布的特性,于是出現了分布式對象。分布式對象將分布的特性隱藏在對象接口之后,在分布式對象范型中,客戶端和服務器之間簡單消息應答方式的通信,漸漸融入了事件與通知、消息隊列、命名、安全、事務、持久化存儲和數據復制等服務。隨著面向服務體系結構(service oriented architecture,SOA)的出現和發展,客戶端和服務器之間消除了對語言、平臺、廠商、訪問地址的人工依賴,具有了更好的松耦合特性。隨后出現的事件驅動的面向服務體系結構(event driven service oriented architecture,EDSOA)則進一步從空間、時間和同步、控制流等維度消除了客戶端和服務器之間的依賴。從分布式系統運行控制的角度,根據控制是單一機器或數據中心集中控制還是分散控制,可將相應的體系結構分為集中式體系結構與去中心體系結構(或分散式體系結構),與前者相比,去中心體系結構具有可靠性更高、參與節點自治、有效利用邊緣計算資源等優勢。

動態性和大規模性是服務互聯網的特點之一。在服務資源的組織和管理方面,由于服務互聯網是大規模的服務生態系統,傳統基于分類的方法無法有效組織大規模服務間的各種聯系。Fallatah等人提出建立服務間、用戶間及用戶-服務間的鏈接以構造服務網絡,基于這種網絡可以測量服務的流行度和用戶滿意度等指標,但該工作并未給出構造這種服務網絡的具體方法(Fallatah et al. 2014)。為了給服務間加上鏈接,從服務的文本描述挖掘的語義相似性可以作為服務間聯系緊密度的指標,Wang等人利用領域知識計算服務間的語義匹配度并用簡單的設定閾值參數的方法來決定服務網絡中鏈接的數量(Wang et al. 2010)。Feng等人基于服務間的包含、輸出包含輸入及輸出部分包含輸入關系建立服務網絡(Feng et al. 2015)。顯然,上述工作是構造靜態服務網絡的方法,服務的動態性和瞬時性并沒有被考慮在內。在過去的20多年里,復雜網絡理論伴隨互聯網的快速發展也取得了一些重大突破。其中,進化網絡模型研究探索網絡的動態行為(包括節點和邊隨時間的動態增減)對網絡拓撲結構的影響,如對現實存在的互聯網、萬維網和社交網絡等大規模網絡的拓撲結構的影響,因此其非常適合用來為具有動態性和大規模特性的系統建模。因此,不少研究者基于進化網絡模型研究服務網絡,如Chen等人提出一種基于Bianconi-Barabási模型(BB模型)(Bianconi et al. 2001)的服務網絡構造方法(Chen et al. 2015),但在基于進化網絡模型研究服務網絡的工作中,探索網絡的動態行為方面的工作還比較缺乏。總之,服務互聯網中服務資源的組織和管理仍然處于起步階段,如何構造服務網絡、如何評估基于不同模型的網絡對組織管理服務互聯網的有效性,以及如何設計基于服務網絡的發現機制和算法等問題有待進一步探索和研究。

在服務或服務方案運行過程中的服務交互可分為兩種:一種是服務或服務方案相關的人機交互;另一種是服務/服務方案之間的交互。早在20世紀90年代,路甬祥等人就提出了“人機一體化系統”的科學發展方向、理論體系和關鍵技術,認為要充分發揮人在系統中的作用,建立一種新型、和諧的人機協作關系,以產生高效益、高性能的系統(路甬祥等1994)。國際上關于智能人機交互的研究主要包括多通道交互、自適應交互等方面。多通道交互是指利用物聯網、虛擬現實等技術,融合物理世界和信息世界,將文字、語音、動作等多種交互通道利用起來;而自適應交互是指根據用戶的偏好或特征,為用戶提供適合的交互方式和交互內容。近年來,讓大規模及具有不同期望、價值和目標的用戶以動態群組的方式實現復雜任務處理的眾包、群體智能也成為一種重要的發揮人在系統中作用的手段。服務或服務方案相關的人機交互方式,即用戶參與服務/服務方案構建和運行的方式,主要包括在建模時允許用戶參與參數設置與修改、服務組合邏輯的配置等,以及在運行時讓用戶參與服務組合邏輯的在線調整、系統對用戶的推薦提供及迭代優化。本書作者提出了服務超鏈,使最終用戶在組合過程不確定的情況下,可以像“網頁超鏈接”一樣選擇業務層面的用戶可理解的服務,使系統能即時向用戶推薦服務,輔助用戶快速完成編程和組合過程,實現探索式的即時服務組合和應用構造(韓燕波等2006,Yan et al. 2008);還提出了一種基于嵌套表格的在運行時對服務組合進行調整的交互方式(Wang et al. 2009,Wang et al. 2015)。中科院軟件所則提出了一種在移動計算環境下的探索式服務交互機制(白琳等2015)。雖然已經有這些研究基礎,在大規模服務個性化定制、追求更高的服務質量和更好的用戶滿意度的服務互聯網環境下,還需要對運行時探索式的服務交互機制進行深入探索。

根據前面的介紹,縱觀服務計算的發展,服務的交付方式經歷了從Web服務、云服務到服務方案或大服務的發展過程。能夠滿足包括第三方/第四方服務中介用戶在內的大規模用戶需求的服務交付方式不再是單一的Web服務或云服務,而是由跨世界(現實世界與數字世界)、跨領域、跨區域、跨網絡的海量異構服務經過聚合與協同形成的復雜服務形態(或復雜服務網絡)。服務互聯網環境下的服務交付的分類、層次結構、實現機制等亟待進一步研究。

在服務或服務方案運行過程中還存在另一種服務交互,即服務/服務方案之間的交互,其主要需求來自服務互聯網中跨組織、跨域的服務協同,其主要問題是服務方案的分布式調度與可靠運行。傳統集中式的流程執行方法需要將數據移動到位于集中控制節點的服務流程中統一處理,增加了網絡通信負擔和流程執行時延。可以通過將大服務或服務方案對應的流程切分為若干個子流程,并將這些子流程以分布的方式部署和執行來緩解此問題。現有工作有基于流程元素的空間屬性等特定屬性進行流程切分的方法,但如何在特定不同的約束條件下對流程進行切分以達到某一種或某幾種性能優化的表現,需要考慮流程元素的外部和內部多種因素。傳統的方法往往只解決流程元素負載事先已知的流程切分問題,對運行過程中流程元素負載動態變化的問題無能為力。

相比傳統服務集成/協同,跨網跨域的服務互聯網的客戶需求及計算環境更加復雜且更加頻繁地發生變化,加劇了軟件系統發生變化的頻率和復雜程度,軟件運行時演化和重構研究面臨更大的挑戰。然而,目前針對服務互聯網應變動態演化方法與重構理論還缺少系統性的研究。當前,關于服務協同軟件演化與重構的研究主要關注在系統持續迭代過程中,服務的按需動態組合共享和性能持續優化。服務的演化可分為靜態演化和動態演化兩個方面,前者指服務實例處于非運行狀態時服務從原版本升級為新版本,后者指正在運行的服務實例發生的服務模型變化。服務的演化從實現方式上來看,主要包括服務接口參數演化、失效服務替換、結構演化等接口參數、接口、流程結構等不同層面的演化。靜態演化研究的主要挑戰在于如何保障演化后服務模型的正確性及其與已有服務約束間的一致性;動態演化涉及如何將變化動態地傳播到正在運行的服務實例上的問題,其主要挑戰在于如何保障服務實例遷移的正確性和遷移檢驗的高效性。無論是靜態演化還是動態演化,都離不開模型層面的演化研究,本書主要關注演化模型的驗證和分析。除了關注個體服務及服務流程的功能、行為特征演化研究,還有學者關注對服務協同軟件系統及其所處環境的整體分析,即從復雜系統角度,基于復雜網絡建模分析等方法對服務協同軟件系統整體拓撲形態和特性的演化進行分析。然而,在動態的、去中心、云與端融合的服務互聯網運行環境下,服務運行優化及演化方面的研究還不夠成熟,尚存亟待解決的難題。

主站蜘蛛池模板: 义乌市| 青田县| 永兴县| 自贡市| 平凉市| 东乌珠穆沁旗| 建宁县| 白玉县| 邢台县| 沈阳市| 长沙市| 惠来县| 哈巴河县| 定州市| 盱眙县| 安化县| 江华| 塔河县| 惠东县| 富民县| 白城市| 巴马| 哈巴河县| 五寨县| 琼结县| 高要市| 阿尔山市| 贡山| 德钦县| 鲁山县| 七台河市| 于田县| 康定县| 栖霞市| 双城市| 饶河县| 榆中县| 会昌县| 嘉义市| 辽源市| 德化县|