原由:
高雄分行有員工反應高雄和台南有網頁延遲的情形
人事系統登入比較費時
但分行開其他系統不會這麼慢。
之後得知除了台北的速度正常外,其他的分行皆有此情形。
正式機為實體機,AP 與 DB 在同一台。
已知問題:
分行且正式環境的人事系統才有網頁延遲的情形。
問題分析:
1. 網路速度是否過慢?
確認網路連接通暢,沒有延遲的問題
相關 DOS 指令 (可分別測試主機名稱、IP、FQDN 是否有不同結果):
tracert XXX.XXX.XXX.XXX
ping -n 100 serverip > c:\gsspingip-T.txt
2. DB 的更新統計資料的設定是否有開啟自動更新?
確認已開啟自動更新
3. DB 是否有死結的問題?
可透過 sp_lock 查看,但於無人使用時段,重開 DB ,問題依舊
4. 防火牆是否有造成影響?
防火牆關閉測試一樣慢
5. 放不連系統的html & aspx,速度如何? 可使用 Fiddler 錄一下,確認差異。
不影響速度
6. 執行 IIS 上不同的目錄的同樣程式,執行速度是否有差異?
EXIMHR 目錄內執行速度較慢
HRPortal 目錄內執行速度正常
差異為 Framework 版本不同
可能為「應用程式目錄」或是「web.config」的問題
在 IIS 上建立新的一個 TEST 應用程式,測試結果一樣緩慢
更換正常速度模組的 web.config ,測試結果網頁開啟速度變快了
web.config 逐筆修改刪除設定,AUDIT_QUERY 刪除後變快了
AUDIT_QUERY 是記錄使用者操作行為的語法,將其寫入至 AUDIT_LOG 中。
查看記Log的那一段程式碼
寫入 AUDIT_LOG 前,會先取得相關的資料
USR_ID、功能代號、IP、SQL 語法、HOST NAME.......
與網路相關的為 IP、HOST NAME
測試程式碼取得台北分行 HOST NAME
測試程式碼取得其他分行 HOST NAME
觀察到問題呈現,其他分行的網頁開啟較緩慢
使用 Ping –a IP 的方式測試
-a 將位址解析為主機名稱。
台北分行可以解析出 HOST NAME ,回應速度快速
其他分行無法解析出 HOST NAME ,花費較久的時間等待回應
結論:
此案例,分行開啟網頁時,由於 AUDIT LOG,要記錄相關資訊,但無法取得分行的 HOST NAME ,造成等待,要記錄的資料愈多,執行愈多次,也造成速度愈慢。
暫時是先不把 HOST NAME 記錄到 LOG 中,就不用取得 HOST NAME,無法解析出 HOST NAME 的原因,待 MIS 查看中。