俞磊:集成平臺運維及問題管理
大型三甲醫院的規模化、集團化發展已成為醫療行業的重要趨勢之一。“構建統一的集成平臺對于提升醫院數據交換和信息共享能力至關重要,因此集成平臺的建設也理所當然地成為醫院信息化的重點工作之一。”上海市第六人民醫院信息處處長俞磊介紹。
集成架構的演變
俞磊談到,信息集成架構演變經過了點對點、SOA、微服務三個階段,三種不同架構存在以下特點:
1.點對點架構可以實現系統間信息交換的“一對一”,從而實現業務系統數據交換的目的,這種連接方式在連接對象比較少的時候,確實是簡單和高效的,它具有開發周期短、技術難度低的優勢。但是當連接對象多的時候,連接路徑會以幾何級數方式劇增(Cnm),而且架構接口繁多,結構復雜、耦合度高、擴展性差、運維管理難度大,該模式越來越難以滿足如今日益復雜的醫院業務。
2.SOA架構是基于一系列Web標準或規范來開發接口程序,并采用支持這些規范的中間件產品作為集成平臺。它是一種開發思想,是一種松耦合的架構,主打標準化,本質上是一個總線型或星型的結構,所有服務的對接需要依賴于這個“中心化”的總線。
3.相比于SOA架構,微服務架構將原來的服務拆分為多個更細粒度的單元,這些小應用間通過服務化完成交互和集成,它主打敏捷開發,可獨立部署,靈活擴展,實現資源有效利用,但需要一個設計良好的監控系統對各個微服務的運行狀態進行監控,這樣運維人員才能夠對系統有細致的了解和更好的運維。
對于架構的選擇,俞磊建議:“多種架構的融合可能更加符合現有醫院信息化生態需要。在信息化建設過程中,究竟使用哪種架構應根據應用需求來權衡它的利弊。”
集成平臺主要組件
集成平臺的組件主要包括調度器、容器、服務網關、負載均衡、服務注冊、配置中心、消息隊列、分布式緩存、數據庫。
俞磊介紹,作為醫院集成平臺的關鍵技術組件,醫院整體各系統的數據交換與通信都基于集成引擎來進行,這對于集成引擎服務的可用性提出了非常高的要求。因此,為確保集成引擎能夠正常長期穩定的運行,需要進行即時的監控和維護。另外,集成引擎中所有服務的生命周期管理、測試管理、授權與訂閱管理以及服務的性能情況也都要進行專項的監管。
在當前,微服務架構大量采用開源的組件,需要持續穩定的運維服務。醫院可以采取統一身份訪問管理的措施,提供適合醫院級組織結構的用戶賬號管理、統一身份認證和精細化的資源訪問控制。
醫院平臺管理主要包括主數據管理和主索引管理,可構建平臺主數據管理規范,確保數據語義標準,同時做好主索引管理,在掛號登記、急診登記、體檢登記、入院登記等各業務應用場景對主數據進行有效管理。
醫院在進行系統運維時,要構建一個良好的安全架構體系,可從加強用戶管理、訪問控制、數據保護和監控等方面著手,確保信息系統安全。
“集成平臺的技術復雜性讓管理難度加大,就如同獨輪車和無人駕駛汽車相比,維修保養均不可同日而語。”俞磊強調。
集成平臺運維管理
俞磊介紹,當前醫院集成平臺運維現狀是缺乏有效的運維監管工具和管理體系,管理內容和職責劃分不清晰。
他建議,醫院集成平臺運維主要考慮以下情況:制訂適合的管理規定,對運維、接口、人員、權限、監控、備份、應急、處罰進行約定;集成平臺的穩定性是一個系統工程,往往應用系統的適配器故障率高;接口安全性應引起重視,接口質量也很關鍵,避免把服務公開暴露在內外網;單個消息避免過大,以免造成性能瓶頸,且要有擁塞處理機制;規范異常消息處理流程,防止錯誤消息造成業務數據不一致;采用集成平臺的服務確保穩定,不貪大求全;醫院應具備核心中間件的運維能力;要合理分析接口業務,在松耦合和緊耦合之間做好權衡。
醫院集成平臺的運維主要包括以下幾個方面:基礎設施管理、集成引擎管理、應用管理、數據管理、用戶行為管理和環境變化管控。在具體實踐中,集成平臺運維可采取以下步驟:制訂規章制度、明確責任權力、強化運維監管、評估安全風險、做好備份方案和制訂演練應急預案。
在俞磊看來,醫院集成平臺由于其涉及運維的范圍復雜,專業性強,因此建立完善的運維管理流程尤為重要,以保證其正常運行和穩定性。主要流程包括問題發現、登記、排查、處理和跟蹤等環節,具體流程如下:
1.通過工具對平臺各類運行指標進行實時監控,通過主動或者被動的方式及時發現醫院集成平臺出現的問題。主動方式主要可通過日常巡檢、用戶報修等渠道發現問題,被動方式可對監控指標設定預警,通過短信平臺或者企業微信等渠道發現問題。
2.發現問題時應及時登記問題的描述、發生的時間和影響等級等信息并對問題進行分類,判斷是軟件故障、硬件故障還是其他原因,以便形成運維臺賬,便于后續形成運維知識庫。
3.針對發現的問題進行排查和定位,可通過排查問題涉及的模塊、系統日志、系統環境、硬件和網絡等方面,確定問題,可先通過查詢運維知識庫快速定位問題和解決方案。
4.定位到具體問題后,就可以采取不同的措施進行處理,例如:修改配置、服務重啟、軟件升級、病毒檢測等。但是處理問題前必須要評估解決方案的風險并制定應急預案,嚴格執行排除故障的過程。
5.針對已處理好的問題,應采取持續進行監控、記錄日志等方式進行問題跟蹤,確保問題已徹底解決,并將問題的完整解決過程記錄或更新到運維知識庫內,為以后類似問題的處理提供積累和參考。
除工具外,醫院集成平臺的運維管理還需要一個專業的運維團隊來負責日常的運維工作。“運維團隊需要具備一定的技術水平和專業知識,包括對硬件設備、系統軟件、應用程序、數據庫等的掌握和管理經驗。”俞磊談到,運維團隊還需要具備良好的溝通和協作能力,與醫院集成平臺的用戶、廠商等進行有效的溝通和合作。
醫院集成平臺的運維監控指標包括系統狀態、應用程序狀態、網絡狀態、數據庫狀態等指標。近年來,基于容器云技術的醫院集成平臺逐漸成為主流,它為集成平臺提供了更好的可觀測性和運維便利性,因此應根據容器技術的特性以及可能出現的問題,進行更深層次的監控和管理,以降低風險和保障系統穩定運行。
“醫院集成平臺是醫院信息化建設的核心組成部分之一,主要功能是將醫院內所有的醫療信息系統整合在一起,實現醫院信息互聯互通,對集成平臺的運維和管理需要采取系統化思維、整體化運維、全局化部署。”俞磊總結道。
(本文得到了陸軍特色醫學中心黃昊主任的指導,在此表示衷心感謝。)