天天看點

論醫院GPS北鬥授時時鐘系統(NTP時鐘伺服器)的重要性

論醫院GPS北鬥授時時鐘系統(NTP時鐘伺服器)的重要性

論醫院GPS北鬥授時時鐘系統(NTP時鐘伺服器)的重要性

引言

曾經的我也有這個想法,既然我們計算機中的計時器都是晶體震蕩來計時,晶體理論上是非常精準,何必要再花錢去搭建一個時鐘伺服器呢,更何況還需要購買GPS或者北鬥衛星的校時伺服器。那麼今天我們就來通過幾個案例說說時鐘伺服器的重要性吧。

【案例一】資料庫伺服器當機

2007年,醫院原有資料庫伺服器已經無法支撐業務的高效運轉,當時我正好接觸了ORACLE 10g,對RAC模式有了一定的了解。于是被它的高可用吸引,就按照RAC模式用兩台伺服器建構起了HIS的核心伺服器。剛開始系統運作很穩定,負載均衡的效果也不錯。大概過了1年左右,有一天晚上資料庫突然當機了。即使重新開機,系統也會馬上當機,我百思不得其解。後來還是在仔細查詢兩台伺服器時鐘時,才發現它們之間已經有近20分鐘的時差了。原來是伺服器時間不同步導緻了RAC的故障,這是我第一次被時鐘的問題擊中。

【案例二】時間引起的糾紛

幾年前,某醫院急診科接診了一名重症患者。患者病情危重,醫院為其開通了綠色通道,急診、檢驗、檢查、手術等各個相關部門都參與到搶救工作中。但是遺憾的是,患者依然不治身亡了。患者家屬在整理相關醫療文書中發現,其中的時間記錄無法形成先後的證據鍊條。以此向法院起訴,最終醫院為此進行了賠付。其時間記錄先後沖突的原因就是不同環節計算機沒有統一的時鐘伺服器進行時間校對,以緻出現了時間沖突的記錄。

這兩個案例的教訓告訴我們,統一時鐘雖然在資訊化建設中是個非常小的内容,但是必須給予重視,否則一樣會釀成大錯。

計算機時鐘的原理

在計算機中晶片本身通常并不具備時鐘信号源,是以須由專門的時鐘電路提供時鐘信号,石英晶體振蕩器(Quartz Crystal OSC)就是一種最常用的時鐘信号振蕩源。石英晶片之是以能當為振蕩器使用,是基于它的壓電效應:在晶片的兩個極上加一電場,會使晶體産生機械變形;在石英晶片上加上交變電壓,晶體就會産生機械振動,同時機械變形振動又會産生交變電場。雖然這種交變電場的電壓極其微弱,但其振動頻率是十分穩定的。

從PC誕生至今,主機闆上一直都使用一顆14.318MHz的石英晶體振蕩器作為基準頻率源。主機闆上除了這顆14.318MHz的晶振,還能找到一顆頻率為32.768MHz的晶振,它被用于實時時鐘(RTC)電路中,顯示精确的時間和日期。初始化後以每秒約18.2次發出脈沖,這些脈沖經過作業系統計算形成BIOS日時鐘計數。通過由BIOS電池供電,關機後它仍然正常運作。這也就是為啥我們關了電源,第二天開機依然會顯示正确時間的原因。

網絡時鐘同步

每個計算機各自有了時鐘,但是一旦它們聯網後,又出現一個問題:各自運作的計算機時鐘,彼此之間日積月累的累計誤差如何解決。這就出現了網絡時間協定NTP,它是用于網際網路中時間同步的标準之一,它的用途是把計算機的時鐘同步到世界協調時UTC,其精度在區域網路内可達0.lms,在Internet上絕大多數的地方其精度可以達到1- 50ms。

NTP提供準确時間,首先要有準确的時間來源,這一時間應該是标準時間。為防止對時間伺服器的惡意破壞,NTP使用了識别(Authentication)機制,檢查來對時的資訊是否是真正來自所宣稱的伺服器并檢查資料的傳回路徑,以提供對抗幹擾的保護機制。随着網絡拓撲的日益複雜,整個網絡内裝置的時鐘同步将變得十分重要。NTP 的出現就是為了解決網絡内裝置系統時鐘的同步問題。

NTP 為以下應用提供了一緻性保證:

在備份伺服器和客戶機之間進行增量備份時,要求這兩個系統之間的時鐘必須同步。

複雜的事物往往需要細分,當由多個系統來處理時,為保證事件的正确順序,多個系統必須參考同一時鐘。

確定系統之間的RPC(遠端系統調用)能夠正常進行。為了保證一個系統調用不會重複進行,一個調用隻在一個時間間隔内有效。如果系統間的時鐘不同步,一個調用可能在還沒有發生之前就會因為逾時而不能進行。

有的應用程式需要準确記錄一個使用者登入系統的時間;或者對一個檔案的修改通路時間。

在一個網絡中,各終端的時鐘相差一分鐘或者更少的情況很多。這些不可能依靠系統管理者手工輸入date(時間設定指令)指令來調節各個系統的時鐘。

調試與事件時間戳:從不同ME60 采集的調試與事件時間戳是沒有什麼意義的,除非這些ME60 是以同一公共時間為參考。

NTP 的目标是對網絡内所有具有時鐘的裝置進行時鐘同步,使網絡内所有裝置的時鐘時間基本保持一緻,進而使裝置能夠提供基于統一時間的多種應用。對于運作NTP 的本地系統,既可以接受來自其他時鐘源的同步,又可以作為時鐘源去同步别的時鐘,并且可以通過彼此交換時間資訊,互相同步,最終使得全網絡内所有裝置的系統時鐘達到基本一緻。

醫院資訊化系統

建構統一時鐘

既然說明了統一時鐘的必要性,那麼下面幾條經驗在考慮和部署時鐘伺服器是也許有用。

1.購買時鐘伺服器,建議采用北鬥衛星模式,并将全網内的所有計算機與此時鐘伺服器同步,實作内外計算機的時鐘統一。該類伺服器還可以提供不同的端口,将我們需要時間管理的裝置進行時間統一。

2.各醫療裝置的校時,并不是所有的醫療裝置都會允許我們去進行時鐘校正。有些大型醫療裝置或者後勤裝置的設定權限甚至都不掌握在醫院手裡,被維保公司管理着。是以醫院應該梳理和制訂出時鐘校對制度,要求裝置管理人員和維保人員将時間校對納入日常監測中,確定時鐘準确。

3.檢查各類應用軟體,并與研發人員确認,當系統需要擷取時間時,應該擷取伺服器時鐘而避免擷取本地計算機時鐘,避免造成時鐘的不一緻。

4.確定視訊監控裝置、各科室挂鐘等非資訊裝置的校時準确。現在各醫院一般均安裝了視訊監控網絡,在安裝時也應該保證存儲和控制伺服器與标準時間的一緻。而有條件的醫院可以将原有散在各處的機械時鐘更換為統一時鐘源的電子時鐘,避免出現資訊系統與紙質記錄時間上的不統一。

時間是醫療記錄中的一個重要内容,是以統一時鐘是我們醫院資訊化建設中不能忽視的重要因素。這樣才能保證醫院的各個環節有序協同工作,才能確定醫療安全。

繼續閱讀