從最佳化的角度淺談醫院his以及社保系統

lfree發表於2005-03-18
由於特殊的原因,本人參與醫院his以及社保的維護工作,本單位使用his為
軍惠,社保系統有兩套,一套為東軟的,一套為長沙創智的。如果站在效能
最佳化的角度考慮,這些系統我可以講都是失敗的,或者需要重寫程式碼。處於
一些商業機密,一些問題我僅僅做到點到為止。

一。軍惠:
軍惠這套系統如果從資料結構講是非常不錯的,但是這套系統我猜開始可能
使用的oracle7.3,而且早期的介面做的非常不好看,但是可能是最實用的。
下面講它存在的問題:

1。P盤問題,我猜想早期可能因為受限與網路速度以及伺服器效能,軍惠將
許多字典放在本地的一個目錄,當維護人員更新相關資訊的時候實際上是更新
一個網路盤P,然後再透過這個網路盤更新本地的目錄,這樣設計從當時講可能
具有許多意義(可能從現在講也是一樣,減輕了伺服器的壓力)。但是使用者使用
的時候有可能沒有對映這個盤,或者一直不退出應用系統,就無法更新,引起
遇到問題。這個設計我覺得有點向一個剛剛畢業的程式設計師想出來的。

2。軍惠的系統在部隊醫院實施我不知道是否存在改動,但是在地方醫院我想
改動一定很大,我自己就見過3套不同風格的門診收費系統。這些系統的修改
往往是許多代理軟體的公司的程式設計員。存在的最大的問題就是沒有使用繫結變
量。這是這一非常糟糕的程式設計行為,影響了效能。當然從整體看這個影響不是
非常大。這也是我認為失敗的主要原因。

二。東軟:
東軟的醫保系統如果用一句話來形容的話就是好像一個房地產公司做的毛呸
房,這樣的房子就交付使用者使用了。

1。同樣是繫結變數的問題,東軟的sql語句倒是認真使用繫結變數,而在呼叫
的儲存過程,卻沒有使用,這好像一顆老鼠屎搞壞一鍋湯。

2。它的欄位變數可能是最難看的,什麼akc190,akc198,不過我聽說這是一種
新的欄位命名模式,我聽一些管理員說過,見過這種風格命令欄位變數,也許是
我不知道。

3。索引建立不合理,這個是最嚴重的問題,許多應該建的索引它沒有建立。
我可以擔保它的醫保系統如果不建立一些索引,系統會越來越慢,至少在我們
當地是這樣。

三。長沙創智:
因為它使用資料庫是ms sql ,我對微軟的資料庫不敢興趣,我一直知道本單位
的系統存在問題(上傳很容易當機),我一直沒有動它,直到去年的10月因為
比較空閒,我開始跟蹤它的sql語句。另外一個主要的原因就是它的儲存過程是
加密的,所以我也不願意動它,不過我曾告訴他們結算時呼叫的存貯過程執行
有點慢。

當我仔細跟蹤裡面的sql語句,我發現我應該改變一些我原來固有的一些錯誤,
微軟的sql server單就執行sql語句的效率講快於oracle,這套系統是我最佳化的
很辛苦,有一些地方我一點辦法都沒有,可以講這套系統是我見過的最最差勁的
系統,我真不知道他們什麼透過驗收的。也不知道這些程式設計師怎麼學習sql的。

總結:
我講了許多,可能許多人認為我的觀點有點偏激,但是像東軟,創智透過什麼cmm認證
的公司,我認為可能國內的許多程式設計師要經過一些sql語句編寫與最佳化的培訓。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-82770/,如需轉載,請註明出處,否則將追究法律責任。

相關文章