接上一节。
瘦身(二)
如果你使用通过HTTP直接连接Tomcat而不是通过Apache/mod_jk: 辑器打开server/slim/deploy/jbossweb-tomcat50.sar/server.xml,移除/注释下面的XML 片段:
<!-- A AJP 1.3 Connector on port 8009 --> <Connector port="8009" address="${jboss.bind.address}" enableLookups="false" redirectPort="8443" debug="0" protocol="AJP/1.3"/>
如果你的用户总是不通过HTTP连接到Tomcat而总是通过Apache/mod_jk连接,编辑server/slim/deploy/jbossweb-tomcat50.sar/server.xml 文件,移除/注释下面的XML片段:
<!-- A HTTP/1.1 Connector on port 8080 --> <Connector port="8080" address="${jboss.bind.address}" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true"/>
如果你不需要可以部署EAR文件l 使用vi打开编辑 server/slim/conf/jboss-service.xml文件,移除/注释下面的XML片段从这
从这个
<mbean code="org.jboss.management.j2ee.LocalJBossServerDomain">
MBean 下面
<attribute name="EARDeployer">jboss.j2ee:service=EARDeployer</attribute>
和
<!-- EAR 部署,如果你不使用Web分层,删除--> <mbean code="org.jboss.deployment.EARDeployer"name="jboss.j2ee:service=EARDeployer"></mbean>
如果你不需要可以部署JMS队列,打开 server/slim/conf/jboss-service.xml 文件,移除/注释下面的XML片段
从这个
<mbean code="org.jboss.management.j2ee.LocalJBossServerDomain" >
Mbean下面
<attribute name="JMSService">jboss.mq:service=DestinationManager</attribute>
如果你不需要使用CORBA/IIOP,编辑 server/slim/conf/jboss-service.xml文件,移除/注释下面的XML片段
从这个
<mbean code="org.jboss.management.j2ee.LocalJBossServerDomain">
MBean 下面
<attribute name="RMI_IIOPService">jboss:service=CorbaORB</attribute>
如果你删除user-transaction-service.xml,server/slim/conf/jboss-service.xml 文件,移除/注释下面的XML片段
从这个
<mbean code="org.jboss.management.j2ee.LocalJBossServerDomain">
MBean 下面
<attribute name="UserTransactionService">jboss:service=ClientUserTransaction</attribute>
如果你不需要JSR-77支持 (尝试做JBoss, Weblogic 和 Websphere支持一些基于同类的JMX监控)你可以删除/注释server/slim/conf/jboss-service.xml文件关于JSR-77的全部片段:
<!-- ==================================================================== --> <!-- JSR-77 Single JBoss Server Management Domain --> <!-- ==================================================================== --> <mbean code="org.jboss.management.j2ee.LocalJBossServerDomain" name="jboss.management.local:j2eeType=J2EEDomain,name=Manager"> <attribute name="MainDeployer">jboss.system:service=MainDeployer</attribute> <attribute name="SARDeployer">jboss.system:service=ServiceDeployer</attribute> <!-- <attribute name="EARDeployer">jboss.j2ee:service=EARDeployer</attribute>--> <attribute name="EJBDeployer">jboss.ejb:service=EJBDeployer</attribute> <attribute name="RARDeployer">jboss.jca:service=RARDeployer</attribute> <attribute name="CMDeployer">jboss.jca:service=ConnectionFactoryDeployer</attribute> <attribute name="WARDeployer">jboss.web:service=WebServer</attribute> <attribute name="MailService">jboss:service=Mail</attribute> <!-- <attribute name="JMSService">jboss.mq:service=DestinationManager</attribute>--> <attribute name="JNDIService">jboss:service=Naming</attribute> <attribute name="JTAService">jboss:service=TransactionManager</attribute> <!-- <attribute name="UserTransactionService">jboss:service=ClientUserTransaction</attribute> <attribute name="RMI_IIOPService">jboss:service=CorbaORB</attribute>--> </mbean>
如果你不需要client-side事务管理 (记住,使用这个那意味着你是一个坏人) ,编辑 server/slim/conf/jboss-service.xml文件,移除/注释下面的XML片段
<!-- UserTransaction support. --> <mbean code="org.jboss.tm.usertx.server.ClientUserTransactionService" name="jboss:service=ClientUserTransaction" xmbean-dd="resource:xmdesc/ClientUserTransaction-xmbean.xml"> <depends> <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory" name="jboss:service=proxyFactory,target=ClientUserTransactionFactory"> <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute> <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute> <attribute name="JndiName">UserTransactionSessionFactory</attribute> <attribute name="ExportedInterface"> org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory </attribute> <attribute name="ClientInterceptors"> <interceptors> <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor> <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor> </interceptors> </attribute> <depends>jboss:service=invoker,type=jrmp</depends> </mbean> </depends> <depends optional-attribute-name="TxProxyName"> <mbean code="org.jboss.invocation.jrmp.server.JRMPProxyFactory" name="jboss:service=proxyFactory,target=ClientUserTransaction"> <attribute name="InvokerName">jboss:service=invoker,type=jrmp</attribute> <attribute name="TargetName">jboss:service=ClientUserTransaction</attribute> <attribute name="JndiName"></attribute> <attribute name="ExportedInterface"> org.jboss.tm.usertx.interfaces.UserTransactionSession </attribute> <attribute name="ClientInterceptors"> <interceptors> <interceptor>org.jboss.proxy.ClientMethodInterceptor</interceptor> <interceptor>org.jboss.invocation.InvokerInterceptor</interceptor> </interceptors> </attribute> <depends>jboss:service=invoker,type=jrmp</depends> </mbean> </depends> </mbean>
你现在能删除从来没有引用的server/slim/conf/xmdesc/ClientUserTransaction-xmbean.xml 文件如果你不需要持久化MBean(persistent MBean )特性 (默认情况下,没有JBoss MBeans使用它...yet),编辑 server/slim/conf/jboss-service.xml文件,移除/注释这个XML片段
<!-- ==================================================================== --> <!-- XMBean Persistence --> <!-- ==================================================================== --> <mbean code="org.jboss.system.pm.AttributePersistenceService" name="jboss:service=AttributePersistenceService" xmbean-dd="resource:xmdesc/AttributePersistenceService-xmbean.xml"> <attribute name="AttributePersistenceManagerClass"> org.jboss.system.pm.XMLAttributePersistenceManager </attribute> <attribute name="AttributePersistenceManagerConfig"> <data-directory>data/xmbean-attrs</data-directory> </attribute> <attribute name="ApmDestroyOnServiceStop">false</attribute> <attribute name="VersionTag"></attribute> </mbean>
既然server/slim/conf/xmdec/xmdesc/AttributePersistenceService-xmbean.xml已经不在被引用,你也可以删除它。 如果你不使用RMI类装载器 (在服务器上利用classes从客户端装载代码),编辑 server/slim/conf/jboss-service.xml文件,移除/注释这个XML片段
<!-- ==================================================================== --> <!-- JBoss RMI Classloader - only install when available --> <!-- ==================================================================== --> <mbean code="org.jboss.util.property.jmx.SystemPropertyClassValue" name="jboss.rmi:type=RMIClassLoader"> <attribute name="Property">java.rmi.server.RMIClassLoaderSpi</attribute> <attribute name="ClassName">org.jboss.system.JBossRMIClassLoader</attribute> </mbean>
和
<!-- ==================================================================== --> <!-- Class Loading --> <!-- ==================================================================== --> <mbean code="org.jboss.web.WebService" name="jboss:service=WebService"> <attribute name="Port">8083</attribute> <!-- Should resources and non-EJB classes be downloadable --> <attribute name="DownloadServerClasses">true</attribute> <attribute name="Host">${jboss.bind.address}</attribute> <attribute name="BindAddress">${jboss.bind.address}</attribute> </mbean>
修改XML片段 (注意: 在JBoss 4.0里,是在server/slim/deploy/ejb-deployer.xml文件里的一点设置):
<!-- EJB deployer, remove to disable EJB behavior--> <mbean code="org.jboss.ejb.EJBDeployer" name="jboss.ejb:service=EJBDeployer"> <attribute name="VerifyDeployments">true</attribute> ... <depends optional-attribute-name="WebServiceName">jboss:service=WebService</depends> </mbean>
象这样标明:
<!-- EJB deployer, remove to disable EJB behavior--> <mbean code="org.jboss.ejb.EJBDeployer" name="jboss.ejb:service=EJBDeployer"> <attribute name="VerifyDeployments">true</attribute> ... <!-- <depends optional-attribute-name="WebServiceName">jboss:service=WebService</depends> --> </mbean>
或者选择性的移除WebServiceName? depends/attribute.
如果你只想使用 JBoss Naming locally (没有 RMI 客户端),打开 server/slim/conf/jboss-service.xml文件,更改下面的XML片段
<!-- ==================================================================== --> <!-- JNDI --> <!-- ==================================================================== --> <mbean code="org.jboss.naming.NamingService" name="jboss:service=Naming" xmbean-dd="resource:xmdesc/NamingService-xmbean.xml"> ... <!-- The listening port for the bootstrap JNP service. Set this to -1 to run the NamingService without the JNP invoker listening port. --> <attribute name="Port">1099</attribute> ... <!-- The port of the RMI naming service, 0 == anonymous --> <attribute name="RmiPort">1098</attribute> ... </mbean>
改写
<!-- ==================================================================== --> <!-- JNDI --> <!-- ==================================================================== --> <mbean code="org.jboss.naming.NamingService" name="jboss:service=Naming" xmbean-dd="resource:xmdesc/NamingService-xmbean.xml"> ... <!-- The listening port for the bootstrap JNP service. Set this to -1 to run the NamingService without the JNP invoker listening port. --> <attribute name="Port">-1</attribute> ... <!-- The port of the RMI naming service, 0 == anonymous --> <attribute name="RmiPort">0</attribute> ... </mbean>
该RmiPort 大多是可选的,但是它意味着我们将不绑定到1098端口,以便这是有益的. 你也可以从相同的XML区域删除此行,来删除相关联的线程池:
<depends optional-attribute-name="LookupPool" proxy-type="attribute">jboss.system:service=ThreadPool</depends>
和它自己的线程池块:
<!-- A Thread pool service --> <mbean code="org.jboss.util.threadpool.BasicThreadPool" name="jboss.system:service=ThreadPool"> <attribute name="Name">JBoss System Threads</attribute> <attribute name="ThreadGroupName">System Threads</attribute> <attribute name="KeepAliveTime">60000</attribute> <attribute name="MinimumPoolSize">1</attribute> <attribute name="MaximumPoolSize">10</attribute> <attribute name="MaximumQueueSize">1000</attribute> <attribute name="BlockingMode">run</attribute> </mbean>
如果你使用它,从JMX控制台(显示JNDI命名树) 此JNDIView MBean 是非常有用的, 除非你不使用它.打开 server/slim/conf/jboss-service.xml ,删除
<mbean code="org.jboss.naming.JNDIView" name="jboss:service=JNDIView" xmbean-dd="resource:xmdesc/JNDIView-xmbean.xml"></mbean>
你可以也删掉server/slim/conf/xmdesc/JNDIView-xmbean.xml 文件如果你不使用JBossSX, 我们为EJBs或者Web层组件继承的基于JAAS的安全 (then you deserve to be flogged and I hope you get hacked but thats another story),打开 server/slim/conf/jboss-service.xml,
删除
<!-- ==================================================================== --> <!-- Security --> <!-- ==================================================================== --> <!-- <mbean code="org.jboss.security.plugins.SecurityConfig" name="jboss.security:service=SecurityConfig"> <attribute name="LoginConfig">jboss.security:service=XMLLoginConfig</attribute> </mbean> <mbean code="org.jboss.security.auth.login.XMLLoginConfig" name="jboss.security:service=XMLLoginConfig"> <attribute name="ConfigResource">login-config.xml</attribute> </mbean>
编辑 server/slim/deploy/jbossweb-tomcatxx.sar/META-INF/jboss-service.xml 并注释掉这些片段:
<!-- The JAAS security domain to use in the absense of an explicit security-domain specification in the war WEB-INF/jboss-web.xml --> <!-- <attribute name="DefaultSecurityDomain">java:/jaas/other</attribute>-->
和
<!-- A mapping to the server security manager service which must be operation compatible with type org.jboss.security.plugins.JaasSecurityManagerServiceMBean. This is only needed if web applications are allowed to flush the security manager authentication cache when the web sessions invalidate. --> <!— <depends optional-attribute-name="SecurityManagerService" proxy-type="attribute">jboss.security:service=JaasSecurityManager </depends> -->
也移除/注释: <!-- JAAS 安全性管理和区域mapping -->
<mbean code="org.jboss.security.plugins.JaasSecurityManagerService" name="jboss.security:service=JaasSecurityManager"> <attribute name="SecurityManagerClassName"> org.jboss.security.plugins.JaasSecurityManager </attribute> <attribute name="DefaultCacheTimeout">1800</attribute> <attribute name="DefaultCacheResolution">60</attribute> </mbean>
如果你使用JBossMQ,你将需要从server/slim/deploy/jms/jbossmq-destinations-service.xml文件的所有测试 queues/topics中删掉任何一个 (优先的)或者注释掉他们的安全性信息. 如果你选择保持示例topics/queues增加如下注释:
<mbean code="org.jboss.mq.server.jmx.Topic" name="jboss.mq.destination:service=Topic,name=testTopic"> <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends> <!—- <depends optional-attribute-name="SecurityManager"> jboss.mq:service=SecurityManager </depends> <attribute name="SecurityConf"> <security> <role name="guest" read="true" write="true"/> <role name="publisher" read="true" write="true" create="false"/> <role name="durpublisher" read="true" write="true" create="true"/> </security> </attribute> --> </mbean> <mbean code="org.jboss.mq.server.jmx.Topic" name="jboss.mq.destination:service=Topic,name=testTopic"> <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends> <!-- <depends optional-attribute-name="SecurityManager">jboss.mq:service=SecurityManager</depends> <attribute name="SecurityConf"> <security> <role name="guest" read="true" write="true"/> <role name="publisher" read="true" write="true" create="false"/> <role name="durpublisher" read="true" write="true" create="true"/> </security> </attribute> --> </mbean> <mbean code="org.jboss.mq.server.jmx.Topic" name="jboss.mq.destination:service=Topic,name=testDurableTopic"> <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends> <!-- <depends optional-attribute-name="SecurityManager">jboss.mq:service=SecurityManager</depends> <attribute name="SecurityConf"> <security> <role name="guest" read="true" write="true"/> <role name="publisher" read="true" write="true" create="false"/> <role name="durpublisher" read="true" write="true" create="true"/> </security> </attribute> --> </mbean> <mbean code="org.jboss.mq.server.jmx.Queue" name="jboss.mq.destination:service=Queue,name=testQueue"> <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends> <!-- <depends optional-attribute-name="SecurityManager">jboss.mq:service=SecurityManager</depends> <attribute name="SecurityConf"> <security> <role name="guest" read="true" write="true"/> <role name="publisher" read="true" write="true" create="false"/> <role name="noacc" read="false" write="false" create="false"/> </security> </attribute> --> </mbean>
发表评论
-
JBoss控制台中文日志乱码 - 字符集设置
2010-01-24 23:02 6380JBoss启动时默认使用的是系统字符集,而某些应用程序对 ... -
JBoss下DataSource加密
2010-01-15 23:26 21281.先来看一个普通的数据源配置文件 <?xml ver ... -
JBoss AS调优(四)
2010-01-15 23:01 2843接上一篇。 瘦身(三) 如果使用JBossMQ ,你 ... -
JBoss AS调优(二)
2010-01-15 13:51 1642本文转自http://xudayu.blog.51cto. ... -
JBoss AS调优(一)
2010-01-14 21:25 2208本人转自http://xu ... -
jboss 的端口修改位置
2010-01-13 22:01 327有时候我们可能需要在同一台机器上面部署多个JBoss,这就涉及 ... -
JBoss启动时加载应用程序的顺序
2010-01-13 21:43 7526以下说到的版本是jboss-4.2.3.G ... -
JBoss 内存溢出处理办法
2010-01-12 17:47 2408java.lang.OutOfMemoryError: Per ... -
JBoss 安全保护
2010-01-05 23:04 1553JBoss服务器差不多每一个方面都可以用JMX或W ... -
JBOSS的启动和停止
2010-01-02 21:01 37563本实例使用的JBOSS版本是jboss-4.2.3.GA ...
相关推荐
【JBoss AS7 性能调优】 JBoss Application Server 7 (JBoss AS7) 是一款开源的应用服务器,以其高效能和快速启动而受到赞誉。然而,为了确保最佳性能,对服务器进行适当的配置和调优至关重要。大约80%的应用性能取...
JBoss性能调优涉及优化硬件资源使用、配置Java虚拟机(JVM)、调整应用服务器(JBoss AS)的设置,以及针对操作系统级别的优化,以最小的开销满足应用需求并提供快速的应用体验。 性能调优的基本思路是理解系统的...
5. **测试与调试**:利用JBoss AS 5自带的工具或外部工具进行功能测试和性能调优。 #### 四、JBoss AS 5 的高级特性 - **集群与负载均衡**:通过集群技术提高应用的可用性和性能。负载均衡器可以在多个JBoss实例...
### JBoss AS 7 Development #### 一、概述 JBoss AS 7(Application Server 7)是一款功能强大且开放源代码的应用服务器,为开发者提供了高效稳定的开发平台,支持多种高级特性,包括EJB(Enterprise JavaBeans)...
- **5.4.5 插件**:介绍了如何扩展JBoss AS7的功能,例如添加新的管理插件或集成第三方工具。 #### 三、开发者指南要点 - **应用程序部署**:详细介绍了如何部署Java EE应用到JBoss AS7。 - **JPA/EJB支持**:涵盖...
9. **性能调优**:提供关于如何优化JBoss AS 5性能的建议,包括内存配置、线程池调整、日志和监控工具的使用。 10. **开发工具集成**:可能涵盖如何在Eclipse、NetBeans等IDE中集成JBoss AS 5,以便于开发、调试和...
综上所述,`Jboss-Spring`是Spring框架与JBoss AS深度整合的一种技术实现,通过`jboss-as-sprint-int-5.0.0.GA.jar`和`jboss-spring-int-vfs.jar`这两个核心库,实现了Spring在JBoss服务器上的无缝运行,为开发者...
4. 性能调优:根据JBoss AS的特点进行性能调优,例如调整内存设置、线程池大小等。 5. 日志整合:确保应用的日志输出与JBoss AS的日志系统兼容,如使用JBoss Logging。 6. 安全性:检查并配置JBoss AS的安全策略,如...
这份官方文档详细介绍了JBoss AS 7.1的功能、配置、管理和优化,对于开发者和系统管理员来说,是一份极其重要的参考资料。 一、JBoss AS 7.1简介 JBoss AS 7.1在性能和可扩展性方面有显著提升,引入了模块化设计,...
【JBOSS教程(PDF)】是一份针对JBoss Application Server 4.2的快速入门指南,旨在帮助用户迅速理解并掌握JBoss AS的基本概念、安装配置以及应用部署。JBoss AS是Red Hat公司开发的一个开源Java应用服务器,它基于...
《PacktPub.JBoss.AS.7.Development.Jun.2013》是一部关于JBoss Application Server 7开发的详细教程,适用于那些希望深入了解如何在企业环境中部署和管理Java应用程序的开发者。这本书可能涵盖了JBoss AS 7的安装、...
JBoss AS 4.3(Application Server)作为一款开源的企业级Java应用服务器,为开发者提供了强大的Java EE(Java Enterprise Edition)环境支持。本文档旨在通过一系列实践指导和深入解析,帮助用户快速上手JBoss AS ...
JBoss由JBoss AS(Application Server)发展而来,现已成为Red Hat企业版Java中间件的一部分,即Red Hat JBoss Enterprise Application Platform (EAP)。 本资源“JBoss中文文档”可能是对JBoss应用服务器的中文版...
JBoss AS(Application Server)的后继者WildFly,引入了更多的扩展点,例如使用`subsystem`来添加新的服务或管理接口。理解这些机制对于开发者来说,意味着能够创建更高效、可维护的系统。 此外,JBoss的安全管理...
2. 性能调优:通过对JVM参数、线程池、内存配置的调整,可以提升JBoss Server的运行效率。 总的来说,JBoss Server作为一款强大的Java EE应用服务器,集成了丰富的功能和工具,为开发者提供了稳定、高效的工作环境...
- **下载与解压**:从官方网站获取最新版本的JBoss AS或WildFly(JBoss的新版本),解压缩到指定目录。 - **配置环境变量**:设置JAVA_HOME指向JDK安装路径,将JBoss的bin目录添加到PATH环境变量中。 - **启动与...
在`standalone.conf`(或`standalone.conf.bat`)中,添加`-Djboss.modules.system.pkgs=com.example,org.jboss.as`参数,其中`com.example`是你的应用包名。 八、集群配置 对于多服务器环境,可以配置集群以实现...
- **版本**:有多个版本,如JBoss AS(Application Server)、WildFly、EAP(Enterprise Application Platform)等。 2. **安装与配置** - **系统需求**:确保满足硬件和软件要求,例如Java SDK、操作系统兼容性...
最后,书中可能会涵盖一些进阶主题,如JBoss AS(Application Server)与WildFly的区别、Spring与JBoss的整合、以及JBoss在微服务架构中的角色等。这些内容将帮助读者更好地适应不断发展的Java企业级应用环境。 ...
JBoss 4是JBoss的一个重要版本,发布于2005年,引入了许多新特性,并且是向JBoss AS 5和6过渡的关键步骤。以下是一些可能包含在该文档中的关键知识点: 1. **安装与配置**:介绍如何下载JBoss 4的源码或二进制包,...