菜鸟学Java(十七)——Jboss瘦身

大家在用Jboss的时候可能跟我一样,觉得Jboss启动实在太慢!比起Tomcat几乎秒启的速度,Jboss几乎让人无法忍受。加上本人电脑配置比较低,Jboss启动最快的时候也是一分多钟,慢的时候四分多钟!这实在是太让人抓狂了。而且为了避免缓存的影响,会经常重启Jboss,这就导致调试程序的时间有很大一部分花在了Jboss的启动上。这显然是很不科学的,其实我们可以通过精简Jboss里面的包以及配置,来提高其启动速度。因为里面有很多东西是我们所用不到的,下面我们看看具体操作。

以JBoss 5.1.0(jboss-5.1.0.GA.zip)为例,瘦身步骤如下:

如果用不到消息队列,移除JMS功能
    删除%JBOSS_HOME%/server/xxx/conf/props/messaging-roles.properties
    删除%JBOSS_HOME%/server/xxx/conf/props/messaging-users.properties
    删除%JBOSS_HOME%/server/xxx/deploy/messaging目录
    删除%JBOSS_HOME%/server/xxx/deploy/jms-ra.rar
    删除%JBOSS_HOME%/server/xxx/deploy/quartz-ra.rar 
    删除%JBOSS_HOME%/server/xxx/deployers/messaging-definitions-jboss-beans.xml

不使用JBoss邮件服务JBoss mail
    删除%JBOSS_HOME%/server/xxx/deploy/mail-ra.rar
    删除%JBOSS_HOME%/server/xxx/deploy/mail-service.xml

不使用JBoss Web Service(JBoss ws)
    删除%JBOSS_HOME%/server/xxx/deploy/jbossws.sar目录
    删除%JBOSS_HOME%/server/xxx/deployers/jbossws.deployer

不使用调度服务及EJB定时器
    删除%JBOSS_HOME%/server/xxx/deploy/schedule-manager-service.xml
    删除%JBOSS_HOME%/server/xxx/deploy/scheduler-service.xml
    删除%JBOSS_HOME%/server/xxx/deploy/quartz-ra.rar
    删除%JBOSS_HOME%/server/xxx/deploy/ejb2-timer-service.xml
    删除%JBOSS_HOME%/server/xxx/deploy/ejb3-timer-service.xml

不使用EJB2
    删除%JBOSS_HOME%/server/xxx/deploy/ejb2-container-jboss-beans.xml
    注:另外一个文件不要删除,有人反应删除会影响EJB3

不使用EJB3
    删除%JBOSS_HOME%/server/xxx/deploy/ejb3-connectors-jboss-beans.xml
    删除%JBOSS_HOME%/server/xxx/deploy/ejb3-container-jboss-beans.xml
    删除%JBOSS_HOME%/server/xxx/deploy/ejb3-interceptors-aop.xml

不使用Beanshell部署器
    删除%JBOSS_HOME%/server/xxx/deployers/bsh.deployer目录

不使用Seam部署器
    删除%JBOSS_HOME%/server/xxx/deployers/seam.deployer目录

不使用Hibernate部署器
    删除%JBOSS_HOME%/server/deployers/hibernate-deployer-jboss-beans.xml

不使用EAR部署器
    删除%JBOSS_HOME%/server/xxx/deployers/ear-deployer-jboss-beans.xml

不使用UDDI
    删除%JBOSS_HOME%/server/xxx/deploy/uuid-key-generator.sar目录
 
不使用JUDDI
    删除%JBOSS_HOME%/server/xxx/deploy/juddi-service.sar
 
控制台很少用,但极耗资源。而且安全配置不好,还会带来安全问题,默认的jboss社区版就有安全问题。全部移除
    删除%JBOSS_HOME%/server/xxx/deploy/admin-console.ear
    删除%JBOSS_HOME%/server/xxx/deploy/management文件夹
    删除%JBOSS_HOME%/server/xxx/deploy/jmx-console.war
    删除%JBOSS_HOME%/server/xxx/deploy/jbossws.sar
 
移除IIOP/CORBA支持,现在应该说很少用了
    删除%JBOSS_HOME%/server/xxx/conf/jacorb.properties 
    删除%JBOSS_HOME%/server/xxx/deploy/iiop-service.xml 
    删除%JBOSS_HOME%/server/xxx/deployers/ejb3.deployer/META-INF/ejb3-iiop-deployers-jboss-beans.xml 
    删除%JBOSS_HOME%/server/xxx/lib/jacorb.jar
 
其它的一些文件,用处都不大
    删除%JBOSS_HOME%/server/xxx/deploy/jboss-xa-jdbc.rar
    删除%JBOSS_HOME%/server/xxx/deploy/sqlexception-service.xml
    删除%JBOSS_HOME%/server/xxx/deploy/xnio.deployer
    删除%JBOSS_HOME%/server/xxx/deploy/xnio-provider.jar
    删除%JBOSS_HOME%/server/xxx/deploy/profileservice-secured.jar
    删除%JBOSS_HOME%/server/xxx/deploy/profileservice-jboss-beans.xml


PS:%JBOSS_HOME%表示JBoss安装目录,“xxx”表示server目录下,所有包含其后面内容的目录。


以上是在下整理的一些相关信息,大家可以根据自己的需要,给Jboss进行相应的瘦身。让你的Jboss在启动的时候不再加载那些你不需要的文件,从而使Jboss的启动速度得到不小的提升。


过年了,最后在这里祝各位,春节快乐,马年马上有钱,单身的马上有对象。



菜鸟学Java(十七)——Jboss瘦身

上一篇:lsof linux


下一篇:程序员学习能力提升三要素(读书笔记)