一種醫學影像快速加載方法
2023-05-13 02:57:11 1
一種醫學影像快速加載方法
【專利摘要】本發明公開一種醫學影像快速加載方法,其包括如下步驟:進行醫學影像操作結束後,由Web瀏覽器向Web伺服器發出醫學影像加載的HTTP請求;由Web伺服器解析HTTP請求,依據該醫學影像的StudyUID通過Hash算法讓響應的處理進程處理此請求,該處理進程判斷醫學影像是否已經加載,如果沒有加載,Web瀏覽器從Web伺服器中獲取醫學影像,並將醫學影像保存到緩存中,如果醫學影像已經加載過,則Web瀏覽器直接從緩存中獲取醫學影像。本發明通過進程調度策略和緩衝機制實現多用戶的並發、避免影像的重複加載,從而有效的改善了醫學影像加載失敗或加載延遲等問題,有利於節約資源、提高醫學影像的加載速度。
【專利說明】一種醫學影像快速加載方法
【技術領域】
[0001]本發明涉及醫學圖像加載及顯示技術,尤其是涉及一種基於Web伺服器的醫學影像快速加載方法。
【背景技術】
[0002]長期以來,醫院的信息化建設一直以固定PC、有線網絡為信息化建設的重要手段,雖然在一定程度上實現了醫院日常業務的無紙化、信息化和數位化,為解決我國看病難、看病貴和醫療資源分布不均勻的問題做出了貢獻。但是對於日常的護理、查房、遠程辦公領域,目前還缺乏成熟的解決方案,即使有一些PDA、移動查房車的移動應用,但是受制於醫院人員擁擠的現狀、電池續航能力和使用的便捷性等方面的制約,得不到廣泛的使用,因此移動領域成為當前醫學信息化的一個死角,成為普及全院無紙化醫療的一個不可逾越的障礙。
[0003]因為近年來移動平板計算機的快速普及和應用,以及WIF1、3G無線網絡的建設,通過internet訪問醫院的信息系統已經在技術上得以實現。近兩年來,國內外廠商均加入到移動醫療研發和應用的熱潮中。醫學影像因其攜帶的信息較為直觀和準確,目前醫學影像檢查已經成為臨床診斷的重要依據,影像的移動瀏覽和處理已經成為移動查房和移動護理的重要手段。然而有別於數KB醫療文書、護理記錄等診療文檔,醫學影像因為其高解析度等因素,一張影像往往包含數MB,甚至幾GB的數據,因此醫學影像的傳輸將佔用大量的帶寬和計算資源。但是因為有限的帶寬和計算資源,而因為醫療診斷的緊迫性和準確性的要求,因此解決當前這種矛盾就成為一種迫切的需求。
【發明內容】
[0004]為解決現有技術的缺陷,本發明提出一種基於Web伺服器的醫學影像快速加載方法。
[0005]本發明採用如下技術方案實現:一種醫學影像快速加載方法,其包括如下步驟:
[0006]A、由Web瀏覽器向Web伺服器發出醫學影像加載的HTTP請求;
[0007]B、由Web伺服器解析HTTP請求,依據該醫學影像的StudyUID通過Hash算法讓響應的處理進程處理此請求,該處理進程判斷醫學影像是否已經加載,如果沒有加載,Web瀏覽器從Web伺服器中獲取醫學影像,並將醫學影像保存到緩存中,如果醫學影像已經加載過,則Web瀏覽器直接從緩存中獲取醫學影像。
[0008]其中,步驟B具體包括:
[0009]Web伺服器收到Web瀏覽器發出的HTTP請求後,會隨機指派給php-cgi子進程處理;
[0010]Php-Cgi子進程區分HTTP請求的類型,對於需要加載醫學影像的HTTP請求,Php-cgi子進程會依據醫學影像的StudyUID來尋找固定的WebCacheChild子進程進行處理;[0011]WebCacheChild子進程判斷該醫學影像是否已經加載過,如果加載過,直接從緩存中獲取該醫學影像返回,如沒有加載過,再到Web醫學影像存儲服務載入醫學影像並返回。
[0012]其中,當Php-Cgi子進程接收到醫學影像加載的HTTP請求時,通過Hash算法找到該醫學影像的StudyUID對應的WebCacheChiId子進程的進程ID,然後通過GetCurrendProcessId函數獲取該進程ID對應的WebCacheChild子進程。
[0013]其中,如果WebCacheChild子進程的狀態為psSuspend,說明進程可以執行該任務,狀態改為psExecute。
[0014]其中,WebCacheChild子進程通過在緩存中查詢醫學影像來判斷該醫學影像是否已經加載過。
[0015]其中,Web伺服器在運行的時候會為每個進程分配不同的內存區域,不同的進程具有獨立的數據空間,且不同的進程通過共享內存區進行數據傳遞。
[0016]其中,通過系統函數CreateFileMapping創建一個共享內存區,並通過系統函數MapViewOfFi Ie將共享內存區影射到進程地址中。
[0017]其中,通過系統函數OpenFileMapping打開管理進程創建的共享內存區。
[0018]與現有技術相比,本發明具有如下有益效果:
[0019]本發明通過進程調度策略和緩衝機制實現多用戶的並發、避免影像的重複加載,從而有效的改善了醫學影像加載失敗或加載延遲等問題,有利於節約資源、提高醫學影像的加載速度。
【專利附圖】
【附圖說明】
[0020]圖1是Web伺服器中多進程並發處理的示意圖;
[0021]圖2是管理進程通信信息的數據結構示意圖;
[0022]圖3是管理進程執行過程的示意圖;
[0023]圖4是處理進程通信信息的數據結構示意圖;
[0024]圖5是醫學影響加載獲取的流程示意圖;
[0025]圖6是處理進程執行過程的示意圖;
[0026]圖7是Web任務線程執行過程的不意圖;
[0027]圖8是管理進程執行過程的示意圖。
【具體實施方式】
[0028]本發明提出一種基於Web伺服器的醫學影像快速加載方法,其中,提供Web服務(Web Server)的Web伺服器採用多進程並發處理方式對醫學影像(或簡稱為「影像」)進行加載處理。Web伺服器具有Web服務進程(Web Server Process)、數據交換區(SharedMemory)、處理任務進程(Task Process)和管理進程(Manage Process),由管理進程來對資源進行有效的分配,如圖1所示。
[0029]因為系統(本申請中提到的系統,指Web伺服器)在運行的時候會為每個進程分配不同的內存區域,對不同進程來說,它們具有獨立的數據空間,要進行數據傳遞需要分配一個共享內存區(Shared Memory) 0首先在啟動主管理進程的時候可以通過系統函數CreateFileMapping創建一個共享內存區,通過系統函數MapViewOfFile將共享內存區影射到進程地址中。在系統運行過程中,管理進程需要管理兩種類型的進程,一種為網絡通信進程,別一種為數據處理任務進程。因為兩種進程的調度策略完全不同,所以在實際操作中,應該分別進行考慮。
[0030]首先我們先描述網絡通信進程調度策略:為了實現管理主進程對其進行合理調度,應該定義兩個數據結構,分別記錄管理主進程的屬性信息、進程運行狀態信息,同時定義進程的狀態,將兩個結構影射到共享內存中[0031 ] 進程狀態定義表如下表1所示:
[0032]
【權利要求】
1.一種醫學影像快速加載方法,其特徵在於,包括如下步驟: A、由Web瀏覽器向Web伺服器發出醫學影像加載的HTTP請求; B、由Web伺服器解析HTTP請求,依據該醫學影像的StudyUID通過Hash算法讓響應的處理進程處理此請求,該處理進程判斷醫學影像是否已經加載,如果沒有加載,Web瀏覽器從Web伺服器中獲取醫學影像,並將醫學影像保存到緩存中,如果醫學影像已經加載過,則Web瀏覽器直接從緩存中獲取醫學影像。
2.根據權利要求1所述一種醫學影像快速加載方法,其特徵在於,步驟B具體包括: Web伺服器收到Web瀏覽器發出的HTTP請求後,會隨機指派給php-cgi子進程處理; Php-cgi子進程區分HTTP請求的類型,對於需要加載醫學影像的HTTP請求,Php-cgi子進程會依據醫學影像的StudyUID來尋找固定的WebCacheChild子進程進行處理; WebCacheChild子進程判斷該醫學影像是否已經加載過,如果加載過,直接從緩存中獲取該醫學影像返回,如沒有加載過,再到Web醫學影像存儲服務載入醫學影像並返回。
3.根據權利要 求2所述一種醫學影像快速加載方法,其特徵在於,當Php-cgi子進程接收到醫學影像加載的HTTP請求時,通過Hash算法找到該醫學影像的StudyUID對應的WebCacheChild子進程的進程ID,然後通過GetCurrendProcessId函數獲取該進程ID對應的 WebCacheChild 子進程。
4.根據權利要求3所述一種醫學影像快速加載方法,其特徵在於,如果WebCacheChild子進程的狀態為psSuspend,說明進程可以執行該任務,狀態改為psExecute。
5.根據權利要求2所述一種醫學影像快速加載方法,其特徵在於,WebCacheChild子進程通過在緩存中查詢醫學影像來判斷該醫學影像是否已經加載過。
6.根據權利要求1所述一種醫學影像快速加載方法,其特徵在於,Web伺服器在運行的時候會為每個進程分配不同的內存區域,不同的進程具有獨立的數據空間,且不同的進程通過共享內存區進行數據傳遞。
7.根據權利要求6所述一種醫學影像快速加載方法,其特徵在於,通過系統函數CreateFileMapping創建一個共享內存區,並通過系統函數MapViewOfFile將共享內存區影射到進程地址中。
8.根據權利要求7所述一種醫學影像快速加載方法,其特徵在於,通過系統函數OpenFileMapping打開管理進程創建的共享內存區。
【文檔編號】G06F9/46GK103902355SQ201210574426
【公開日】2014年7月2日 申請日期:2012年12月26日 優先權日:2012年12月26日
【發明者】陳閩峰, 鄧慶林, 苑金龍 申請人:深圳市藍韻網絡有限公司