domino中java代理導致記憶體溢出問題的解決方案

來源:互聯網
上載者:User
環境:DOMINO6.02    主機:as400-820  
我用JAVA寫了一個代理,編譯和運行均正常。但此代理運行幾百次後,就會報錯:java.lang.OutOfMemoryError,估計是記憶體溢出錯誤。我的程式中已對記憶體做了清理,代碼如下:  
sysdoc.recycle();  
sysview.recycle();  
view.recycle();  
doc.recycle();  
db.recycle();  
System.gc();  
試問各位高手,這是什麼原因呢。是DOMINO的JAVA虛擬機器問題還是DOMINO的設定問題呢。  
---------------------------------------------------------------  
 
呵呵,去年我就問過這個問題,我的一個java代理  ,迴圈運行幾千次,就出現這個錯誤,到現在還沒有解決.個人認為是domino的jvm問題.  
---------------------------------------------------------------  
 
記憶體流失阿  java虛擬機器的記憶體回收  啟動的太慢,  建議你把  java虛擬機器的初始分配存  
開大點  如果你記憶體足夠多  應該沒有問題  注意domino只能用4gb的記憶體  呵呵  
 
就此問題我已請教了清華紫光的as400工程師,他說可能是DOMINO的JVM有問題,建議我去打補丁,唉,可是補丁從哪找呀....  
 
另問一下bug0303(補丁)兄,你這個問題是在PC上還是在400上遇到的。  
 
經諮詢,得到以下緩解方法:  
 
在伺服器的  notes.ini  檔案中,可以增加一個參數:  
JavaMaxHeapSize=<位元組數>  
這個參數的具體數值應該根據伺服器的硬體環境和應用程式的實際需要來調整,預設的值應該是64M,可以根據情況適當往大調一下。例如,“JavaMaxHeapSize=268435456”  將此值設為256MB。  
注意  增加或修改此參數後,應重新啟動  Domino  伺服器。  
 
如再無更好的方法,本貼將結貼。  
 
經測試,增加JVM緩衝不能解決此問題,IBM工程師也承認這是DOMINO的JVM有問題。  
 
介此,我已用LS將這段JAVA改寫,實現了同樣的功能。 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.