大家在用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瘦身的更多相关文章

  1. 菜鸟学Java(十五)——Java反射机制(二)

    上一篇博文<菜鸟学编程(九)——Java反射机制(一)>里面,向大家介绍了什么是Java的反射机制,以及Java的反射机制有什么用.上一篇比较偏重理论,理论的东西给人讲出来总感觉虚无缥缈, ...

  2. 菜鸟学Java(十四)——Java反射机制(一)

    说到反射,相信有过编程经验的人都不会陌生.反射机制让Java变得更加的灵活.反射机制在Java的众多特性中是非常重要的一个.下面就让我们一点一点了解它是怎么一回事. 什么是反射 在运行状态中,对于任意 ...

  3. 菜鸟学java开篇

    从事it工作已有接近两年的时间了, 一直从事的是php的工作, 一直都想学java ,原因就不多说了, 毕竟优秀的php程序员,都会是一个其他方面的高手, 例如java ,并不是说java有多好,ph ...

  4. 菜鸟学Java(十六)——Jboss简介

    简介 JBoss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器. 因为JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用它,而不用支付费用.2006年,Jboss公司 ...

  5. 菜鸟学Java(十八)——异常

    每个学编程的人在编程的过程中都会遇到各种异常.那么当我们遇到异常的时候该怎么处理呢?针对不同的异常我们又该采取什么具体的处理方式呢?这些问题在我开始学编程的很长一段时间里我都不太清楚,还好随着不断的学 ...

  6. 菜鸟学Java(十二)——搭建一个完整的Java开发环境

    作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...

  7. 菜鸟学Java(二十一)——怎样更好的进行单元測试——JUnit

    測试在软件生命周期中的重要性,不用我多说想必大家也都很清楚.软件測试有许多分类,从測试的方法上可分为:黑盒測试.白盒測试.静态測试.动态測试等:从软件开发的过程分为:单元測试.集成測试.确认測试.验收 ...

  8. 菜鸟学Java(二十三)——Java内存分析

    我们常说的Java内存主要分为四大块(寄存器不在考虑之内,我们无法用代码来操控它):stack(栈).heap(堆).data segment(数据区).code segment(代码区).它们的主要 ...

  9. 菜鸟学Java(二十二)——重新认识泛型

    泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数.这种参数类型可以用在类.接口和方法的创建中,分别称为泛型类.泛型接口.泛型方法. Java语言引 ...

随机推荐

  1. 【onethink1.0】HTML模板获取前台和后台当前登录用户名

    1.版本:onethink1.0:位置:HTML模板 前台:{:get_username()} 后台:{:session('user_auth.username')}

  2. Windows下的包管理器Chocolatey的使用

    1.配置安装路径(后续需要管理员权限执行命令) Create a machine level (user level will also work) environment variable name ...

  3. (转)IntelliJ IDEA java项目导入jar包,打jar包

    以下为转载原文:https://www.cnblogs.com/yulia/p/6824058.html 一.导入 1.java项目在没有导入该jar包之前,如图: 2.点击 File ->   ...

  4. grib文件

    一.grib文件简介 WMO是世界气象组织,world meteorology organization. GRIB是WMO开发的一种用于交换和存储规则分布数据的二进制文件格式.最初GRIB表示&qu ...

  5. nodejs中的exports和module.exports

    module是随文件而生的全局变量,它有exports属性,这个属性默认是一个空的字典. node的设计者画蛇添足有定义了一个exports全局变量,export指向module.exports所指向 ...

  6. syslog远程日志存储/514端口【转】

    昨天在抓包的时候,发现在514端口,有SYSLOG字段的东西,不知道是用来干啥的,现在来分析一下: 其实他是在电脑间用了syslog远程日志存储,他用udp监控了514端口的数据流,之后收集整理日志: ...

  7. 【colaboratory】ModuleNotFoundError: No module named 'forward'

    在colaboratory中,import 自己写的 py 文件往往会爆出 ModuleNotFoundError: No module named ‘forward' 的错误. 就其原因,是由于 D ...

  8. 2014百度之星第一题Energy Conversion

    Energy Conversion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  9. mysql中Table is read only错误解决方法

    今天再我把数据库data 拷贝到linux 下运行程序 ”mysql中Table is read only的解决“ 出现这样的问题,查询资料. linux下执行如下命令即可 #mysqladmin - ...

  10. 【转载并整理】ORACLE锁机制

    转载文章:http://blog.csdn.net/liuyiy/article/details/25005393 转载文章:http://www.cnblogs.com/jiyuqi/p/37017 ...