大家在用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. Generating phar.phar chmod: cannot access `ext/phar/phar.phar': No such file or directory make: [ext/phar/phar.phar] Error 1 (ignored)

    make install出现了cp: cannot stat `ext/phar/phar.phar': No such file or directory 于是我又: cd ext/phar/ls ...

  2. Java Web自定义MVC框架详解 (转)

    转自:http://blog.csdn.net/jackfrued/article/details/42774459 最近给学生讲Java Web,希望他们能够在学完这部分内容后自己实现一个MVC框架 ...

  3. shell脚本read -t 超时输入测试

    [root@server0 shellStudy]# cat timeout.sh #!/bin/bash TIMEOUT=3 #超时间隔 echo "What is your name?& ...

  4. Android控件进阶-自定义流式布局和热门标签控件

    技术:Android+java   概述 在日常的app使用中,我们会在android 的app中看见 热门标签等自动换行的流式布局,今天,我们就来看看如何 自定义一个类似热门标签那样的流式布局吧,类 ...

  5. Category在项目中的实际运用

    先看两行代码:1. label2.textColor = [UIColor colorWithHexString:@"707070"]; 2. _table.header = [M ...

  6. Ubuntu中root用户和user用户的相互切换[转载自93度的饼干]

    Ubuntu中root用户和user用户的相互切换 Ubuntu是最近很流行的一款Linux系统,因为Ubuntu默认是不启动root用户,现在介绍如何进入root的方法. (1)从user用户切换到 ...

  7. Elasticstack 5.1.2 集群日志系统部署及实践

    Elasticstack 5.1.2 集群日志系统部署及实践 一.ELK Stack简介 ELK Stack 是Elasticsearch.Logstash.Kibana三个开源软件的组合,在实时数据 ...

  8. 树莓派使用DHT11温湿度传感器

    一.相关介绍 DHT11介绍: DHT11是一款比较便宜的温湿度传感器模块.读取数据只需要占用一个IO口.能够同时测量温度和相对湿度. DHT11的数据手册可以看这里:http://wenku.bai ...

  9. Spring事务异常回滚,捕获异常不抛出就不会回滚

    最近遇到了事务不回滚的情况,我还考虑说JPA的事务有bug? 我想多了.......    为了打印清楚日志,很多方法我都加tyr catch,在catch中打印日志.但是这边情况来了,当这个方法异常 ...

  10. C# 自定义控件,日期时间选择输入插件

    权声明:本文为博主原创文章,未经博主允许不得转载. // 为textBox1添加一个日期时间选择控件 DateTimeChoser.AddTo(textBox1); DateTimeChoser.De ...