魯 冰
(山東社會科學院圖書館 山東濟南 250002)
資源共享工作一直是圖書館界最為關注和熱議的焦點內容之一,圍繞著共享工作開展的學術交流和實踐探討也從未停止,資源共享給國家、社會、大眾等各方面帶來的資源紅利不斷增長。《中華人民共和國公共圖書館法》第三十條規定:國家支持公共圖書館開展聯合采購、聯合編目、聯合服務,實現文獻信息的共建共享,促進文獻信息的有效利用[1]。國家在立法方面明確了資源共享工作的基本作用和地位,資源供給也從以需求方為主導驅動發展的模式轉變為供需雙方協同發力。隨著共享理念上升為國家核心發展理念,圖書館資源共享工作也亟需進入一個更高層面的發展階段。
回顧圖書館資源共享工作的發展歷程,尤其是計算機技術普及后,以信息技術為核心驅動的資源共享變革占據了主導地位。第一次重要的變革是從紙質資源到數字資源的轉變,主要涉及計算機技術、排版技術、數字存儲技術、圖像識別技術等;第二次重要的變革是通過互聯網絡實現資源共享,主要涉及通信技術、網絡技術、檢索技術、交互技術、多媒體技術、數據庫技術、中間件技術等;第三次變革是通過大數據分析實現共享資源的整合、優化、重組、重塑,主要涉及大數據技術、云計算技術、數據挖掘技術、虛擬化技術等[2]。三次變革分別解決了資源共享的載體問題、資源共享的傳輸問題、資源共享的精準供給問題等關鍵性問題,圖書館資源共享已經發展到相對成熟穩定的階段。但是一段時期以來,資源共享工作發展趨于平緩,資源供給方的主體構成變化不大,主體間合作不夠充分,共享平臺融合度不高,個性化資源供給能力有待提高。微服務架構及其技術作為近年來的新生技術,是否能夠有助于圖書館資源共享工作的進一步創新發展,本文將嘗試進行簡單的分析。
近幾年,微服務逐漸成為信息技術領域中的熱點詞匯,其作為一種提升互聯網絡、物聯網絡和移動網絡應用開發部署效率的方法和架構,越來越多地成為業界人士、新型企業、新舊媒體等相關領域熱議的內容,伴隨著微技術的日臻成熟和云計算的深層次發展,微服務迅速進入到實踐應用階段。關于微服務,業界還沒有權威和統一的定義,基于本文中圖書館的應用背景,作者將微服務定義為以互聯網絡、物聯網絡、移動網絡等的組件化應用服務為基礎的有關平臺、內容、技術、管理、團隊等內容的綜合體系。應用組件化是微服務概念中的核心內容,這里的組件或者是獨立于硬件、或者是獨立于系統、或者是獨立于平臺等,其主要特點之一就是多維度的、多變化的和多情境的顆粒化狀態,現階段常以容器的方式呈現在具體應用架構之中。微服務的概念還是要注意區別于當下以微信、微博等為代表的碎片化的互聯網應用服務,微信、微博等是以服務內容為標準的“微信息服務”或者是“碎片化信息服務”,而本文中所指的微服務概念主要是以微架構為技術基礎的一個綜合的體系,具體微服務應用是以應用去中心化、服務個性化、獨立部署運維為主要特點,微信、微博等應用服務當然也可以采用或者遷移至微服務平臺或者模式。網易消息推送微服務系統是應用微服務架構較為成熟的平臺,主要涉及容器通信、服務發現、負載均衡、數據分布等方面的內容,是微服務技術實踐的典型應用例證之一。當然現階段的微服務技術也存在著一定程度的問題,開發人員在應用過程中就微服務實施當中有關環節的復雜度提出了質疑。他們發現當活躍微服務數量較大的時候,平臺建設、技術開發、實施運維、微服務通信、微服務狀態管理等方面的復雜程度明顯增加。
微服務在圖書館領域的應用不僅僅是技術的應用,還是理念、方法和模式的應用,將會涉及到圖書館服務工作的方方面面,特別是基于互聯網絡和數字資源的服務工作。微服務應用是現有圖書館服務體系的有益補充,也為圖書館工作創新提供了嶄新的模式和路徑,但這并不意味著任何一項圖書館工作都必然需要采用微服務技術或者架構。微服務如何在圖書館服務工作中發揮自己的作用,這取決于圖書館的主要職能、發展規劃、目標用戶、具體需求、資源類別、服務方式等多個方面的內容,如從應用的角度來簡單分析,圖書館數字資源服務中的交互式服務相比存儲記錄型服務更適合于微服務應用模式。對于圖書館資源的共享工作來講也是這樣的情況,在長期的發展過程中共享的理念深入人心,以信息技術為核心的多元素驅動的共享體系趨于成熟和穩定,法律、制度、規則、環境、技術、資源等均在不斷完善,微服務技術的誕生對于圖書館資源共享工作的深入發展無疑是有所幫助的,特別是在個性化服務供給、服務安全性問題等方面可以提供出較為合理和廣泛的解決方案。
微服務應用下的圖書館資源共享包括資源領域、技術領域、系統平臺三個方面的內容,真正可以通過技術手段實現去中心化和個性化共享資源供給,作為用戶的體驗則是多媒體的、無平臺的、可再生的資源供給。微服務資源共享延伸了資源共享的概念,令資源共享進入以資源為核心包括技術、平臺、法律等多個元素的微系統化共享模式,使得尚未融入國家圖書館資源共享戰略的群體得以融入,整個社會資源共享程度大幅度提高,同時也促進了共享競爭、共享市場、知識產權市場的長足發展。
2.2.1 微服務對于圖書館資源共享服務供給側方面的影響
微技術的引入使得圖書館資源共享服務真正實現跨平臺化、跨設備零障礙供給和消費,顆粒化狀態也可以實現共享服務基礎資源消耗數量達到盡可能小的狀態,組件化模式使得共享服務的實施部署變得簡單便捷,通用容器設計大幅度降低了微服務資源共享的準入門檻。對于圖書館資源共享的參與者和供給者來講,微技術的應用大大降低了這項工作的難度和復雜程度,使得越來越多的實體機構,特別是個人參與到資源共享的服務實踐中來。參與者和供給者數量的增加,帶來的一定是技術、資源和實際供給更進一步的豐富,同時資源共享的理念和工作生活方式更加深入人心。從傳統共享服務的核心——實體圖書館的角度來講,微服務應用的介入對于業界各類基礎性資源的優化配置有相當的促進作用,同時將會逐漸消除館際間服務規模、技術應用、資金支持等方面的差異,技術架構和平臺對于部分實體館的制約也就漸漸消失。
2.2.2 微服務有助于圖書館資源共享個性化服務工作的深層次開展
針對用戶需求提供個性化的服務一直是圖書館服務追求的理想目標之一,微服務應用于資源共享,可以從系統容器、環境通信、運行速度、資源種類、資源挖掘、服務展示、定制交互、內容關聯、協議安全、服務穩定性等多個角度甚至是全角度實現不同內容的個性化服務。特別是與資源自身相關的揭示類型和方法、深度挖掘、知識關聯等方面,供給方可以提供遠遠超出需求的較為系統、全面、深入的資源服務,甚至是形成一個專題型資源庫呈現給用戶,并且這樣的服務完全不受制于軟硬件環境。微服務環境下的資源共享個性化服務是服務體系、服務主體、服務角度、服務理念、技術應用等多個方面的個性化工作,適合于不同層次、不同目標、不同情景的供給和參與主體[3]。
2.2.3 微服務可以幫助解決圖書館資源共享服務工作的安全問題
微服務的組件化應用模式大大增強了資源共享微服務安全問題處理的自主性,對于資源供給主體或者實體,可以根據需求制定相應的安全策略,確定必要的安全等級,選擇合適的微服務安全協議,采用流行的微服務安全技術,實施對應的安全措施。組件化將微服務安全應用與其他核心應用主體剝離開來,解決好通信和協議問題,絕大多數安全應用均可部署,其便捷性和靈活性得到極大提高。微服務安全組件的開發可以采用自主或者定制開發的方式,也可以使用較為成熟的開源容器,同時關聯相應的安全技術即可,如引入當今熱門的區塊鏈技術完成資源應用認證工作。理論上只要條件允許,微服務安全性能和等級可以無限制提高直到現下最高技術級別。在一定區域或者系統的圖書館資源共享聯盟內部可以根據市場、需求、資金、實體以及資源本身特點等情況制定統一的安全策略和安全等級標準,采用同樣的安全技術和組件,以提高共享效率。
圖書館資源共享的微服務整體架構是描述微服務共享平臺中各個元素間的邏輯關系、各個模塊間的流轉關系、各個功能層的共享關系的思維導圖,本文參考時下較為成熟并且與云計算服務密切聯系的Spring Cloud快速分布式微服務架構,以不同類別的圖書館聯盟為核心的微服務資源共享工作為視角來探討微服務架構。
圖書館資源共享的微服務架構如圖1所示,整體平臺架構是以用戶需求控制總線、用戶服務平臺、服務系統總線、統一服務平臺、服務數據總線、資源總庫平臺的三總線、三平臺為主線構成的架構體系,適用于多實體、多平臺融合的綜合環境,也可以被單一圖書館實體所采用[4]。所有總線平臺均采用集合的方式運行部署,強調開放性和開源性;每個層面的平臺架構和總線架構的構建由多個主體共同合作完成,形成充分共享狀態下的一體化微服務體系。平臺構建的參與者可以是圖書館實體,也可以是區域圖書館聯盟,或者是其他實體形式,同時鼓勵微服務個體提供者參與其中。服務平臺或者是總線平臺可以采用較為成熟和傳統的標準系統內部總線或者是系統間總線的模式(例如ESB),通常總線模式結構緊密,更有利于系統整體高效運轉,但其中的問題就是總線模式對于開發維護等方面的要求較高;如果采用非標準總線模式,則有更多的開源架構可以選擇,靈活性高、適應性強、接口豐富,特別是能夠支持不同的開發環境,自由地創建微服務容器和模塊[5]。同時,其構建也是依靠眾多的微服務開發及服務人員,可以合理降低開發和部署成本。

圖1 圖書館資源共享的微服務架構
用戶服務平臺是指微服務應用交互平臺,是負責聯結供求雙方的業務平臺。在具體實例部署工作中需要明確其在開發過程中所選擇的特定語言和環境,以及實施整體流程的描述。共享需求產生以后,具體微服務要經歷微服務描述、微服務周期、微服務拆分、微服務響應、微服務判斷選擇、微服務整合、微服務重置等基本生命周期,整個階段發生在用戶需求控制總線和用戶服務平臺當中。統一服務平臺是針對整個架構平臺的監測和管理,保證整體架構的穩定性和正常運轉,特別是針對意外事件的發生及時啟動處理機制。資源總庫平臺是整合所有涉及特定資源共享項目并分布在互聯網絡中的基礎設施、基礎平臺、基礎數據,同時進行相關操作的層級應用平臺[6]。這一平臺是與現有paas、saas、laas、caas等云應用聯系最為緊密的平臺,也就是說其中許多應用可以采用云平臺的方式,這樣更有利于各類資源的充分共享。這其中的組件數據庫、容器數據庫、資源數據庫、通信數據庫、描述數據庫、行為數據庫等幾大數據庫作為平臺架構運轉的基礎性數據庫尤為實用和重要,特別是為個人資源共享的參與者提供更為便捷的分享體驗。
微服務架構圖中包含三個總線系統:用戶需求控制總線完成格式化編碼和需求調度工作,主要包含外部請求、緩存操作、負載操作、序列操作、路由操作等任務模塊;服務系統總線即微服務系統總線完成微服務標準化封裝工作,主要包含服務注冊、組件封裝、容器操作、通信協議、資源調度等任務模塊;服務數據總線完成數據整理調度工作,主要包含數據分析、數據處理、數據清洗、數據通訊、數據傳輸等任務模塊。
資源共享的微服務架構系統在搭建過程中使用的開發技術及其耦合關系構成了微服務的技術架構,其中主要涉及技術開發類、基礎環境類、過程組織類、運維支撐類以及關聯規范等幾個方面的內容,具體表現為現實應用、虛擬環境、技術平臺、基礎資源等之間的構建關系,重點在于微服務內核、通信協議、容器熔斷、分布發現、容錯冗余、監測日志、身份認證、技術安全、令牌代理、路由算法等關鍵技術的實現,以瀏覽器/服務器為基本應用模式的服務架構。
微服務架構的共享不僅僅是以往以數據、文獻、知識等為主體的資源共享,實質是包含平臺共享、技術共享、資源共享、空間共享、服務共享等多個方面內容的共享體系。架構的主要特點就是分層共享、分層融合、供需雙方共同參與,具有極強的應用模式和應用環境的自適應性。架構的創新點是引入集合的概念,采用多種平臺集合的運行模式。這里的集合是指一個或一個以上的應用實例共同運行在微服務整體架構的任意層階的平臺中,并且多個實例可以形成功能域、自然域,通過技術手段實現功能等多方面的互聯互通并保證良好運轉。
資源共享工作中的知識產權問題一直是業界熱議的焦點,如果微服務應用引入資源共享工作中,供給側主體結構將發生巨大變化,僅就數量和種類兩方面的變化就會使得共享中的知識產權問題放量增長,尤其是與資源、技術相關的著作權問題。首先是共享服務主體的多元化,造成知識產權意識參差不齊,尤其是自由個體作為服務提供主體的時候,因為種種利益的驅動,時常以避免知識產權成本來提高相關收益。其次是服務供給主體的知識產權能力千差萬別。如由于技術能力、技術人才的缺失造成的知識產權能力的低下,特別是以微服務應用為基本模式的共享服務,單一的微服務實例,在很多情況下是由服務供給方自行根據情況制定和實施知識產權保護方案,甚至是編寫保護程序和代碼,這種情況下技術能力就直接決定了知識產權能力。
微服務應用過程中的難點和核心技術問題就是微服務的“微”的定義、設計和實現,也就是針對傳統圖書館資源共享業務的拆分、重構和實施。“微”的定義、設計和實現與需求情景、供給情景、服務情景密切相關,具有一定的動態性質。具體實踐過程中需要通過技術手段解決或者解答包括微服務定義的現實意義和有效性,微服務與現有共享業務之間邏輯關系的描述和實現,微服務組件與服務拆分之間對應關系的表達,以及微服務之間的通訊、微服務推送、微服務適用等方面的問題。尤其是面對較為成熟、效率較高的資源共享服務項目,在微服務理念的角度,從哪個突破點入手,通過哪種技術方式去實現,則需要相當程度的考量。
資源共享管理團隊的變革動力受制于管理團隊的綜合能力,圖書館資源共享工作的創新發展與其管理團隊所具備的“識別變化、應對變化、實施創新”能力密切相關,特別是信息技術創新驅動方面的綜合能力。一方面,現有資源共享服務系統與運維體系已經得到主流市場和用戶的認可,針對圖書館資源共享的新型需求沒有形成規模,并且管理團隊也已非常熟悉當下狀態,因此以微服務技術驅動的變革動力相對缺乏。另一方面,管理團隊對于微服務這樣的技術應用或者是模式應用整體的把握和判斷不夠準確。具體內容包括微服務應用的生命周期、發展方向及未來應用模式,微服務應用對于資源共享工作的可用性、作用和效能的判斷,微服務應用的具體切入點等。
微服務與資源共享之間的關系描述是揭示在共享原則下建立圖書館資源共享微服務體系的過程,這其中館際合作問題是微服務應用實施所需要解決的另一方面的主要內容,具體包括行業中微服務應用規則體系的形成和建立的問題,館際間關于微服務應用協商、合作、協調的問題,館際間微服務應用互通、互聯、互用的具體落實和實施的問題等,特別是微技術應用方面包括整體架構、技術框架、組件應用、容器開發、互聯通訊、安全防御、技術保障、平臺融合、渠道整合、協議規范、知識產權等的協調協作問題。
通過政策驅動、資金驅動、資源驅動、技術驅動、需求驅動、創新驅動等策略,推進多種類的微服務應用架構下的資源共享參與和發展方式。鼓勵參與實體或者個人根據自身實際情況,通過人力、資源、資金、技術、渠道等優勢共享生產要素建設,參與到微服務資源共享工程中來;引導參與實體或者個人在各個共享產生環節完成資金供給、場所供給、空間供給、設備供給、網絡供給、原始資源供給、微服務技術供給、容器供給、知識產權供給、安全技術供給等。促進區域內共享模式、系統內共享模式、同質共享模式、資源互補共享模式、技術同質共享模式、技術互補共享模式、互聯網+模式、網絡社區模式、星型共享模式、網狀共享模式等以參與和服務的對象、共享的范圍和特征為基準劃分的多種共享模式共生共存[7]。
中央和地方各級政府出臺促進微服務資源共享工作快速發展的宏觀規劃和實施方案,對于從事微服務資源共享基礎研究、技術開發、應用部署、咨詢推廣等方面工作的企業,適當采取優惠或者減免稅費的激勵政策,減輕企業經營負擔,激活企業創新動能;同時針對此類小微企業提供貸款優惠政策,做到貸款渠道暢通和款項到位及時,特別是促進小微企業平穩發展的無抵押、無擔保小額貸款;降低此類行業的企業和其他實體的準入門檻,對于場地、設備等基礎資源的建設或者租用費用給予合理的優惠;科學引導社會投資、社會力量、社會金融資源積極參與微服務資源共享工程建設,促進共享平臺建設、整合優化共享服務和發展渠道;進一步完善知識產權制度,推行包容審慎的監督措施,提高知識產權管理框架的靈活性,促進知識產權的資本轉化和應用;運用財政補貼,鼓勵圖書館、企業和其他實體針對微服務資源共享行業的人才培養和人才使用,通過學歷教育、職業教育、社會化教育培養更多的專業隊伍和專業人才,更大范圍地開展微服務應用社會實踐活動[8]。
微服務在圖書館資源共享工作中的應用需要充分借助各類協會組織的力量,如圖書館行業協會、互聯網行業協會、科學技術協會、知識產權保護協會、網絡空間安全協會等。協會可以完成微服務行業發展方略的制定、技術應用指導、服務等級評估等主要工作,通過縱向的紐帶作用協調政府、社會、企業、圖書館等各方關系,解決政策、制度、規則、合作等問題;通過橫向的橋梁作用協調不同行業協會,解決技術、架構、安全、通訊等問題[9]。當然,由圖書館行業的旗艦館和微技術應用開發的領航企業聯合牽頭成立有關微服務應用方面的行業組織,能夠更加準確、有的放矢地處理和解決微服務在資源共享工作中的問題。