南 楠(三門峽職業技術學院,河南 三門峽 472000)
基于業務流程的高可用架構在高校圖書館中的應用
南 楠
(三門峽職業技術學院,河南 三門峽 472000)
針對高校圖書館對公眾開放后訪問量急劇增加帶來的系統安全保障問題,提出構建一套面向業務流程的高可用架構。在系統結構相對成熟已具有高可用情況下對高校圖書館管理的業務流程展開分析,提出基于業務流程的高可用架構來雙向保障圖書館的正常使用,對各大高校圖書館的建設提供參考依據。
業務流程;高可用架構;高校圖書館
高校圖書館與地方圖書館的結合,打破了傳統圖書館的生存模式。校園網與外網的資源共享,對用戶提供更多的借閱服務雖提高了服務質量,但也使高校圖書館的使用、擴展和安全保障面臨不少危機。
高校圖書館存儲的海量信息資源一般都是分布式存儲,業務不僅面向校內同時向校外開放,數字化的特點使其服務時間每天至少為15個小時以上。其強大的使用價值和一些珍貴的館藏都促使高校要建立一個高可用性、高維護性、高擴展性的圖書館,確保其正常運行。
目前一些研究也針對于此,但都是從技術角度來考慮,常采用雙機熱備、集群技術負載均衡、虛擬化技術等模式來完善網絡系統避免其在運行時出現故障。但技術架構再完美,仍不可避免系統故障的發生,因此不能僅從技術角度考慮系統的架構問題,更應在不偏離業務目標的基礎上建立高可用的業務流程架構[1]。本文從高校圖書館系統的工作流程角度出發,研究設計出一種面向業務流程的高可用架構,為全面保障網絡系統的正常服務提供助力。
一般的高可用架構主要是從系統結構層面入手,面向業務流程的高可用架構重點對象是高校圖書館的正常使用、用戶、管理者間的聯系,在技術架構日趨成熟的同時使管理的步伐不至于落后造成使用中斷。
面向業務的高可用架構的實現規則主要是以人為主體,在管理者和使用者能接受的最短時間內定位問題并解決問題,要實現上述目的通常應該遵循以下幾條原則:
(1)系統高可用性原則:高可用不僅包括軟硬件技術結構,還包括管理和運維體系,盡最大努力保證業務不出問題或將問題發生時間縮短到最低限度,以業務需求為目標驅動體系構成,這是技術層面再完善也不可能絕對做到的。
(2)系統高靈活性原則:任何數據在使用和保存上都應遵守多機共享機制,不要把所有數據都保存在一臺服務器上,當遇到故障時無法及時恢復使用。
(3)故障準確定位原則:出現問題第一時間發現,第一時間解決,快速發現和定位問題所在,這點要結合技術和管理兩方面同時進行。
(4)業務迅速恢復原則:服務出現問題,不要一味尋找發生問題原因,以盡快解決問題入手,選擇最佳解決方案后再排查出現問題的原因,讓業務的正常流程不中斷。
高校圖書館的現有技術架構基本為采用雙機主備或雙機互備機制,通過網絡轉換設備使用公用IP地址,利用集群技術搭建多臺服務器結構,將容錯、恢復時間盡量降低, 綜合遠程容災系統確保數據安全性,技術上的設計已滿足當前需求。這時,業務的高度集中帶來的危險度將凸顯出來,任何一個業務環節中斷都會使圖書館的使用受到影響。
高校圖書館的業務需求要根據學校對圖書館的定位而設置,對內、對外或內外兼有也要參考其規模和綜合資源。現有高校圖書館的業務流程主要包括兩大類:公眾服務部分和管理維護部分。公眾服務部分完成的功能是:借閱編號的獲取、檢索查詢、借閱、歸還等;管理維護部分包括:系統內外網管理、數據庫管理、人員管理、文獻管理、硬件設備管理等[2]。具體的業務流程如圖1 所示。

圖1 高校圖書館業務流程圖
根據業務流程建立的高可用架構首要目標是在業務出現問題時第一時間恢復業務,其次是解決根源問題。這樣做主要原因是在很多情況下排查問題所耗費的力量和資源是難于預計的,比如服務響應遲緩,所牽涉到的原因可能有:磁道受損、緩存過多、CPU不足等,逐一進行排查將耗費大量人力物力而服務也會阻滯,最快的解決反而是啟用備用機直接工作,是業務正常進行。遵循上述高可用架構原則建立的全方位、環繞式高可用方案如圖2所示。
圖2中顯示構建的系統架構共分為5層:管理維護層、業務應用層、核心服務層、網絡服務層、用戶應用層,每層都是根據高校圖書館的業務流程制定的,每層分工解決服務當中出現的不同問題。
3.1用戶應用層
用戶應用層主要解決的是在服務業務出現問題時,如何將用戶的受挫感降至最低。某些情況下,對互聯網的訪問第一次鏈接都會出現訪問錯誤或連接失敗的現象,使體驗者的成功感受挫,系統服務質量降低[3]。訪問請求最常見問題就是DNS緩存、跨網訪問延緩等,目前最常用的解決方案就是客戶端重試技術。

圖2 基于業務高可用架構方案
用戶提交服務后無響應就會刷新重試,DNS不可靠造成的錯誤主機地址即使重試也會是一樣的結果。導致DNS出錯的原因大概有兩種:DNS域名緩存和DNS服務器被轉發。DNS域名緩存后會有滯后時間,在此時間段用戶訪問不會即刻獲取新地址,訪問結果將出現異常;DNS服務器被轉發后,用戶的訪問經過了其它的運營商,由短距離訪問變成了長距離訪問,訪問變慢服務延遲。
3.2網絡服務層
用戶發起重試后會遇到DNS錯誤,即域名解析異常,如何高效、精準的解決該問題,本文提出了使用HttpDNS服務解決方案。基本原理是當DNS服務出現問題時,用戶重試請求不在通過DNS而是直接訪問HttpDNS服務接口,獲取業務指定域名對應的IP地址繞開出問題的DNS,如重試次數超過預定值停止服務。完整的服務流程圖如圖3所示。

圖3 網絡服務流程圖
從流程圖可看出,相比傳統的域名解析服務,通過加入http協議后對業務控制力增強,DNS解析域名異常時(緩慢或打不開),允許用戶重試這時直接使用Http協議直接獲取IP地址有效解決域名異常問題,當請求過多時可通過分流減壓提高響應速度,同時當服務出現問題用戶重試后可達到秒級的處理速率,業務實現時結合DNS和HttpDNS兩種方法也使系統的擴展性增強,這一設計遵循了高可用設計原則中業務迅速恢復原則[4]。
3.3核心服務層
核心服務層的目標是盡最大可能降低問題發生率,這層包括三部分:功能分離、功能降級和多機互備。功能分離主要是將業務的核心服務和非核心服務分離,避免非核心服務出現問題時影響到核心服務功能,高校圖書館的核心服務主要包括文獻(紙質和電子)管理,用戶信息,管理信息,身份驗證,非核心服務包括留言,查詢,新聞動態等。區分核心服務和非核心服務后建立多個服務器,不分主備將核心服務和非核心服務設置在不同的服務器上,通過通用訪問接口連接,一旦發生問題可及時切斷連接并自由轉移服務任務到其它服務器上,這種方式將使系統間的互影響降低到最小[5]。
3.4業務應用層
參照成本和規模的可控度,要保持數據的一致性在本系統中設置在業務應用層中。多機互備使數據庫在不同的服務器上運行,且不分主從獨立運行,數據發生異常時任何一臺服務器因地位平等都可及時接手業務提供正常服務,這就是同步數據的主要作用。
重讀數據是為了保證數據的實時性,當數據發生異常,允許二次重讀,這時通過通用訪問接口讀取其它服務器上的數據,因為每臺數據庫服務器上運行的數據都是同步的,訪問操作不會受到任何影響。重新生成的數據也不會影響到正常業務的開展,且可隨時根據需要分配資源和切換不同數據庫測試系統穩定性。
3.5管理維護層
實時監測與全方位管理是管理維護層的主要任務。實時監測的實現方式是研發一套可隨時采集數據、分析統計、提交報告的可視化界面系統,管理人員第一時間獲得詳細的運行情況,不要出現問題后人為去排查業務出現的問題,繁瑣的過程耗時耗力且不一定發現問題根源所在。全方位管理就是監測系統應該監控到業務中的每一個環節,用戶訪問、數據交換、查詢瀏覽、信息更新等,同時對業務中涉及到的軟硬件也隨之監測,例如數據庫存儲、防火墻運行、CPU和內存使用率等。管理運維層的主要任務就是在設置的容忍時間內準確定位問題所在,并提供解決方案[6]。
隨著高校圖書館的發展,高校圖書館聯盟的建立,其業務需求和技術都在不斷上升,網絡危險因素也會增加,高可用的架構體系才能保證業務的正常開展,因此需建立一個持續的監管流程,技術改進的同時保障外圍工作的正常進行。本文提出的準確定位、快速恢復、常態運危等目標都是針對系統業務流程設計的高可用原則,這些原則不僅可以使系統正常運行同時可以將現有各種軟硬件資源得到最優化使用,減少對有限資源的浪費和巨大的經濟投入。
高校圖書館的高可用建設是一個長期、持久、全面的工作,當然不僅要建立業務架構,還應該結合軟件技術、硬件技術、數據庫技術、管理技術、保障發展體系等多方面建立一個高可用的系統,為今后服務質量的提高,業務的拓展建立良好的基礎。
[1]王鵬,楊華民,田愛雪.高校數字圖書館海量信息存儲系統架構研究[J].長春理工大學學報,2014(06).
[2]程兆輝.高可用基礎架構技術研究[J].航空制造技術,2015(08).
[3]鄭曉軍.圖書館廣域網接入高可用架構的技術分析[J].圖書館研究,2014(02).
[4]張寧.全媒體背景下圖書館學科服務架構建設[J].圖書館理論與實踐,2014(10).
[5]李雅西,沈亮,胡威.電力數據中心高可用性架構關鍵技術研究[J].技術研究與應用,2014(12).
[6]張紅麗.基于云計算平臺的分布式數字圖書館框架模型研究[J].情報科學,2013,31(03):40-44.
10.16640/j.cnki.37-1222/t.2016.14.262