Jboss 4.2.3配置與優化

1      Jboss內存優化

修改這個兩參數,給jvm分配適當的內存,一般爲服務器的3/4內存量,推薦至少使用4G內存。

另外添加兩個參數 -XX:+UseParallelGC -XX:+UseParallelOldGC 這兩個讓服務並行回收內存空間。

-server:一定要作爲第一個參數,在多個CPU時性能佳

-Xms:初始Heap大小,使用的最小內存,cpu性能高時此值應設的大一些

-Xmx:java heap最大值,使用的最大內存

上面兩個值是分配JVM的最小和最大內存,取決於硬件物理內存的大小,建議均設爲物理內存的一半。

-XX:PermSize:設定內存的永久保存區域

-XX:MaxPermSize:設定最大內存的永久保存區域

-XX:MaxNewSize:

-Xss 15120 這使得JBoss每增加一個線程(thread)就會立即消耗15M內存,而最佳值應該是128K,默認值好像是512k.

+XX:AggressiveHeap 會使得 Xms沒有意義。這個參數讓jvm忽略Xmx參數,瘋狂地吃完一個G物理內存,再吃盡一個G的swap。

-Xss:每個線程的Stack大小

-verbose:gc 現實垃圾收集信息

-Xloggc:gc.log 指定垃圾收集日誌文件

-Xmn:young generation的heap大小,一般設置爲Xmx的3、4分之一-XX:+UseParNewGC :縮短minor收集的時間

-XX:+UseConcMarkSweepGC :縮短major收集的時間

 

 

修改完成後,大致爲

JAVA_OPTS="="-server -Xms128m –Xmx2048m –Xss512k -XX:PermSize=128m -XX:MaxPermSize=512m -XX:MaxNewSize=256m -XX:+UseParallelGC -XX:+UseParallelOldGC  -Dfile.encoding=GBK"

2       Jboss部署目錄優化

     去掉和應用無關的部署,加快jboss運行速度

bsh-deployer.xml

client-deployer-service.xml 

ear-deployer.xml

ejb-deployer.xml

http-invoker.sar

jboss-bean.deployer

jboss-ws4ee.sar

jms

jsr88-service.xml  

schedule-manager-service.xml

scheduler-service.xml

sqlexception-service.xml

uuid-key-generator.sar

3       Jboss應用安全加固

去掉:

Tomcat status (full) (XML)

JMX Console

JBoss Web Console

刪除deploy下的jmx-console.war/ management/

[root@190MEM deploy]# pwd

/usr/local/jboss/server/default/deploy

[root@190MEM deploy]# ls jmx-console.war/ management/

jmx-console.war/:

checkJNDI.jsp  displayMBeans.jsp    images     inspectMBean.jsp  META-INF          WEB-INF

cluster        displayOpResult.jsp  index.jsp  jboss.css         style_master.css

 

management/:

console-mgr.sar

[root@190MEM deploy]#

 

4       降低jboss輸出日誌的等級

打開 <jboss>/server/default/conf/jboss-log4j.xml ,這是一個log4j的配置文件。

日誌輸出的太多,會導致服務器性能降低,所以減少不必要的日誌輸出。方法大體如下:

 

 

5       起用了jboss內的tomcat對傳輸數據的壓縮功能

合同管理裏用了大量的javascript css等,爲了減少傳輸時間,可以起用壓縮功能。方法是:

1.                         打開<jboss>/server/default/deploy/jboss-web.deployer/server.xml

2.                         找到 protocol=”HTTP/1.1″ Connector元素,添加屬性 URIEncoding=”utf-8″ compression=”on” compressionMinSize=”2048″ noCompressionUserAgents=”gozilla, traviata” compressableMimeType=”text/html,text/xml,text/javascript, text/css, text/plain,application/xhtml+xml,application/x-javascript,application/javascript,text/xhtml”

添加完後類似於:
<Connector port=”8080″ address=”${jboss.bind.address}”   
maxThreads=”250″ maxHttpHeaderSize=”8192″
emptySessionPath=”true” protocol=”HTTP/1.1″
enableLookups=”false” redirectPort=”8443″ acceptCount=”100″
connectionTimeout=”20000″ disableUploadTimeout=”true” URIEncoding=”utf-8″ compression=”on” compressionMinSize=”2048″ noCompressionUserAgents=”gozilla, traviata” compressableMimeType=”text/html,text/xml,text/javascript, text/css, text/plain,application/xhtml+xml,application/x-javascript,application/javascript,text/xhtml”/>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章