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