應用長時間未呼叫後再次呼叫出現hang的情況
之前某應用就存在長時間不呼叫,再次呼叫時處於hang,等待10分鐘返回3113的連線錯誤。今天正好同事也問了個相同的問題,也是應用長時間不呼叫就出現這種情況。
以前對於這種問題進行過排查,但一直未解決,針對今天的這個系統的問題,還是按照老方法檢查,
1. 檢查應用日誌,確實長時間等待後報3113的錯誤。
2. 檢查資料庫的PROFILE中idle_time引數,此處設定的是DEFAULT的UNLIMITED,說明超時不會是由資料庫使用者PROFILE配置導致的。
3. 檢查網路環境,因為這個應用是從一個網段訪問另一個網段的資料庫,諮詢網路中心後,中間有一個防火牆,確實也有超時的設定,是40分鐘,也就是應用連線空閒40分鐘後,就會自動kill連線。
問題找到了,為了解決這個問題,其實方法也有很多:
1. 寫個指令碼定時調這個應用,保證40分鐘內有呼叫,就不會出現超時的問題了。
2. 通過Oracle的一些機制自動探測資料庫連線來間接保證40分鐘內應用有呼叫。
這篇文章介紹的DCD就是一種比較不錯的方法:http://sundog315.itpub.net/post/308/530331。
另外老熊也有一篇非常好的文章推薦:http://www.laoxiong.net/oracle_and_firewall.html。
都是值得反覆玩味體會的。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7192724/viewspace-774908/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【MySQL】innobackupex長時間hangMySql
- 【MySQL】innobackupex 長時間hangMySql
- sql統計時間出現斷點的相關情況SQL斷點
- oradebug處理DB hang情況
- 哪種應用的使用時間更長?
- 呼叫layoutSubviews各種情況分析View
- 資料泵匯入分割槽表長時間HANG住
- php倒數計時出現-0的情況PHP
- 一文教你預測 app 未來的變現情況APP
- 棧空間受限情況下C/C++函式呼叫注意事項C++函式
- 線性時間選擇(含平均情況O(n)和最壞情況O(n)演算法)演算法
- kafka不停止服務的情況下修改日誌保留時間Kafka
- Flurry:哪種移動端應用的使用時間更長
- [譯] 一文教你預測 app 未來的變現情況APP
- DreamWeaver中應用CSS樣式表的幾種情況CSS
- Oracle裡時間的應用Oracle
- 哪些情況應該廢標,廢標後如何處理
- 微服務呼叫中出現傳遞過來的物件為空的幾種情況微服務物件
- 微服務間的呼叫和應用內呼叫有啥區別微服務
- Java後端長時間無操作自動退出實現方案Java後端
- Oracle 12.2中的索引統計被呼叫情況Oracle索引
- 爬蟲代理為什麼會出現超時的情況?爬蟲
- 切換歸檔模式後後臺程式的情況模式
- Oracle 時段負載情況Oracle負載
- 請問這種情況應該用什麼模式?模式
- AIX5.3上用rm命令的df命令不能正常現實磁碟空間的真實情況AI
- PHP應避免使用addslashes()的情況PHP
- 總結Oracle根據時間查詢的一些常見情況Oracle
- unity+時間戳的應用Unity時間戳
- php訪問目標網站時出現亂碼的情況PHP網站
- undo表空間出現問題的幾種情況與處理
- 表在表空間中的儲存情況
- 預設情況下 80% 的 Android 應用正在使用加密流量Android加密
- Go語言對Android原生應用開發的支援情況GoAndroid
- 刪除臨時表空間hang處理
- TextView未繪製情況下獲取其寬高TextView
- 微服務間的方法呼叫和應用內方法呼叫有啥區別微服務
- Android應用開發—setResult()的呼叫時機Android