亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

都是防火墻惹的禍--Oracle連接老斷!

瀏覽:4日期:2023-11-14 17:03:50
忙乎了將近兩周,終于搞定了。從一開始懷疑是網絡的問題,后來覺得不是,可能是應用的問題,發現很可能是數據庫的問題,最后真相大白又回到原點,原來是網絡防火墻在搗鬼。 行為非常詭異,怎么想也想不明白,我都沒多少信心預備放棄了,沒想到原因竟然如此簡單。 事情是這樣的,我們開發的系統需要保持和Oracle數據庫的持續連接,假如因為網絡或者其它原因非正常斷開的話,必須重新啟動應用程序,否則將會出錯無法使用。在測試環境運行很穩定,一搬到機房機架上就出現希奇的現象,第二天早上來看服務器,所有的數據庫連接都斷掉了,有時候白天也斷,而且一個應用斷的次數非凡頻繁,其它應用白天不怎么斷。因為我們的應用服務器網段是192.168.x.x,而數據庫服務器在10.x.x.x網段,剛開始我懷疑是中間的路由器有這種問題,假如網絡持續一段時間沒有流量自動把網絡斷開。并且和網管說了這事,他說不可能有這種問題。因為我們以前做過另外一個系統也存在這種問題,似乎是這個原因,不過后來怎么解決的不是很清楚了。找知情人士了解后原來是數據庫網卡的原因,從應用服務器ping數據庫服務器一個晚上有幾次丟包現象,換數據庫服務器網卡就沒事了。 于是我們用ping -t server-IP > ping.txt 來檢查網絡是否有丟包現象,持續幾個晚上都沒有一次丟包的,網絡狀況非常好。我檢查網卡屬性的電源屬性卡上有一個復選框是否答應計算機閑置時關閉該設備,默認是選中的。于是我懷疑是網卡被計算機關掉了,于是所有連接均斷開了,但是白天之斷開一個解釋不同啊。應用程序有問題?為什么測試環境中沒發現問題?有可能是某一塊數據有問題,他們測試時亂調圖碰到雷區了,于是我檢查所有的數據,沒有那種問題。真是讓人費解,而且我持續ping,網卡也不可能被關閉的啊。 有可能是某個端口關閉了,于是我們寫了一個小程序,打開一個數據庫連接,每隔一定時間查一下數據庫,保持端口是打開的。問題依舊存在,這個小程序的連接沒斷,其它的全斷了。是什么原因呢?其實現在想起來問題已經很明朗了,但是當時就是不明白怎么回事。而且那天老是打電話過來,連接又斷了,上午斷兩次,下午又斷了兩次。一整天我們都沒想出什么好辦法,怎么會這么變態,為什么會只斷掉一個?我當時懷疑是我們應用程序有點問題,在絞盡腦汁想辦法怎么檢測應用程序的錯誤。為了檢測斷開的規律,我寫了兩個觸發器,用戶登陸時網一個表中插入一條記錄,注銷是把注銷時間填入表中。后來發現根本一點用也沒有,非正常退出時根本不會觸發LOGOFF事件,白忙乎了!下班了,騎車回家,忽然想到一個辦法,定時激活連接,保持活動狀態看它還斷不斷。很多好的想法都是在我離開辦公室回家的路上想出來了,在辦公室怎么想也想不出來,離開辦公室就想出了。第二天馬上行動,果真有效,連接沒有再斷過。但是這樣不是個辦法,為什么連接一段時間不活動就會被殺掉了呢?在我們的應用程序中看不到原因,只是說連接丟失,在sqlplus中提示說end-of-file communication channel。 今天一整天我都在網上狂找相關內容,oracle connection lost, oracle session lost,oracle session timeout等等,看到也有人碰到類似我這種情況的人,但是沒有好的辦法。我把Oracle net service得文檔翻了一遍,看到sqlnet.ora有一個關于超時的參數SQLNET.EXPIRE_TIME簡直如獲至寶,后來發現原來沒用。服務器端自動殺掉客戶端進程的情況還可以通過Profile來實現,限制IDLE_TIME,但是我檢查數據庫根本沒有相關的設置。 好不輕易找到一溜很長的帖子,也是關于我這種問題的,最后他說解決了是防火墻的問題。但是以前我印象中防火墻只是針對端口的,怎么會保持某些活動連接,殺掉不活動的連接呢?后來我去網上查了查防火前的有關原理,好象它能處理到TCP/IP連接一級,也就是可以只斷開某一個不活動的連接。但我還是不很確定,但是我知道在數據庫服務器和應用服務器之間有防火墻,把機器搬過去的那天,能ping通數據庫服務器,但是不能連數據庫,后來網管把Oracle數據庫的兩個端口打開就可以了。我們找到網管,他說是有這種問題,防火墻就是這樣的,假如一個連接長時間不活動就會自動殺掉的。假如不這樣的話,防火墻的內存很快會用完,還說我們違反了TCP/IP的設計原則。但是沒辦法,我們的應用程序需要持續而穩定數據庫連接,只能把我們的應用服務器放到防火墻后面去。于是他把我們的服務器跳了線,變成一個網段的,從此不再有連接斷開的問題了。終于徹底解決這個問題,長舒一口氣! !!其實主要原因還是網絡規劃有問題,怎么能把我們應用服務器和數據庫服務器隔開呢?;
標簽: Oracle 數據庫
主站蜘蛛池模板: 国产精品亚洲精品观看不卡 | 成人羞羞视频在线看网址 | 毛片毛片免费看 | 大陆1区二区三区 | 欧美一区二区三区免费观看视频 | 91热视频在线 | 亚洲影视一区二区 | 中文字幕一区二区三区不卡 | 国产人成精品香港三级古代 | 91免费看视频 | 欧美综合中文字幕久久 | 国产xxxx做受欧美88xx00tube | 亚洲国产精品成人精品软件 | 免费一区二区视频 | 亚洲精品色综合色在线观看 | 黄色一级视屏 | 中文字幕 亚洲精品 第1页 | 香蕉视频入口 | 免费一级毛片免费播放 | 91av官网 | 黄网站免费观看 | 全部毛片 | 日本亚洲乱码中文字幕影院 | 成人免费播放视频777777 | sese视频在线观看 | 午夜性刺激免费视频 | 国产精品久久久久影视不卡 | 黄色大片影院视频免费 | 99久久久国产精品免费牛牛四川 | 婷婷六月天在线 | 美女三级在线 | 高清国产一级毛片国语 | 在线观看高清视频bbixx | 很黄很黄视频 | 91精品国产91久久久久福利 | 成人毛片免费 | 日韩一区二区三区在线播放 | 国产乱码 | 影音成人资源 | 韩日在线 | 亚洲一区二区三区福利在线 |