- 浏览: 450311 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (377)
- Java (66)
- C++ (0)
- VC++ (0)
- .net (1)
- css (36)
- 数据库 (22)
- html (2)
- extjs (1)
- jpbm (0)
- javascript (31)
- 物资管理 (1)
- java基础 (5)
- C# (0)
- Android (56)
- window service (1)
- 其他 (2)
- Web服务器 (7)
- jbpm (1)
- eclipse (2)
- tomcat (3)
- java字符串与二进制的相互转化 (1)
- Oracle 数据库 (6)
- FreeMarker (8)
- 浏览器 (1)
- php (1)
- photoshop (6)
- spring (4)
- spring mvc (2)
- Acegi (1)
- webStorm 3.0 (4)
- Mongodb (8)
- mysql (9)
- 软件开发:需求分析 (1)
- 把Java程序作为Windows系统服务 (1)
- nodejs (4)
- json (1)
- 缓存 (1)
- J2ee (2)
- Flash报表 (1)
- MyEclipse+Maven+Tomcat (11)
- 生活 (1)
- Ubuntu (1)
- Bootstrap (1)
- jquery easy ui (2)
- 敏捷开发 (1)
- phone gap (1)
- rest (1)
- 移动开发 (22)
- Redis + Jedis + Spring (3)
- anroid (7)
- grunt 教程 (7)
- PhoneGap (2)
- sublime text (7)
- mariadb (1)
- linux (1)
- maven (2)
- jquery (1)
- ActiveMQ (1)
- LVS Nginx (1)
- nginx (6)
- ngnix (1)
- 爱因斯坦 (1)
- 天干地支 (1)
最新评论
-
muqingren:
...
Maven多模块布局实例详解 -
shutear:
解决了我的难题,谢谢分享!
Unable to load configuration. - action - file:/D:/studytool/apache-tomcat-6.0.16 -
702346318:
[img][/img][flash=200,200][/fla ...
CAS单点登录完整教程(上)【转】 -
liuguofeng:
PersonS631887934 写道学习中。。 有个问题想请 ...
js constructor属性 -
S631887934:
学习中。。 有个问题想请教楼主为什么要加上Person.pro ...
js constructor属性
一. Jboss后台启动:
添加后台修改命令:
vi run.sh
while true; do
if [
"x$LAUNCH_JBOSS_IN_BACKGROUND" = "x" ]; then
# Execute the JVM in the
foreground
nohup "$JAVA" $JAVA_OPTS \
-Djava.endorsed.dirs="$JBOSS_ENDORSED_DIRS" \
-classpath "$JBOSS_CLASSPATH"
\
org.jboss.Main "$@"
JBOSS_STATUS=$?
else
# Execute the JVM
in the background
"$JAVA" $JAVA_OPTS \
-Djava.endorsed.dirs="$JBOSS_ENDORSED_DIRS" \
-classpath "$JBOSS_CLASSPATH"
\
org.jboss.Main "$@" &
JBOSS_PID=$!
# Trap common signals
and relay them to the jboss process
trap "kill -HUP $JBOSS_PID" HUP
trap "kill -TERM $JBOSS_PID" INT
trap "kill -QUIT $JBOSS_PID" QUIT
trap "kill -PIPE $JBOSS_PID" PIPE
trap "kill -TERM $JBOSS_PID" TERM
#
Wait until the background process exits
WAIT_STATUS=0
while [
"$WAIT_STATUS" -ne 127 ]; do
JBOSS_STATUS=$WAIT_STATUS
wait $JBOSS_PID
2>/dev/null
WAIT_STATUS=$?
done
fi
# If restart doesn't
work, check you are running JBossAS 4.0.4+
#
http://jira.jboss.com/jira/browse/JBAS-2483
# or the following if you're
running Red Hat 7.0
#
http://developer.java.sun.com/developer/bugParade/bugs/4465334.html
if [
$JBOSS_STATUS -eq 10 ]; then
echo "Restarting JBoss..."
else
exit
$JBOSS_STATUS
fi
done &
二.
Jboss内存优化:
修改这个两参数,给jvm分配适当的内存,一般为服务器的3/4内存量,推荐至少使用4G内存。
另外添加两个参数
-XX:+UseParallelGC -XX:+UseParallelOldGC 这两个让服务并行回收内存空间。修改完成后,大致为 JAVA_OPTS =
“-Xms4096m -Xmx8192m -XX:+UseParallelGC -XX:+UseParallelOldGC -Dsum……
三.
Jboss日志输出模式
[root@190MEM conf]#
pwd
/usr/local/jboss/server/default/conf
[root@190MEM conf]# vi
jboss-log4j.xml
<appender name="FILE"
class="org.jboss.logging.appender.DailyRollingFileAppender">
<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
<param name="File" value="${jboss.server.log.dir}/server.log"/>
<param name="Append" value="false"/>
<param name="Threshold"
value="ERROR"/>
四. Jboss数据库连接池优化
修改数据库连接池:
<datasources>
<local-tx-datasource>
<jndi-name>training_master_db</jndi-name>
<connection-url>jdbc:mysql://211.100.192.128:3306/dts?useUnicode=true&characterEncoding=UTF-8</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password></password>
<min-pool-size>100</min-pool-size>
<max-pool-size>500</max-pool-size>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
五.
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
六.
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]#
七. 备注:
优化jboss从几个方面入手,第一,配置路径端口,第二,给后台管理加权限控制。第三,jvm的优化配置。
第一,
项目一般都是用utf-8来配置传输参数。如果不配置的话,会默认为系统的编码
那么你首先的修改其编码“jboss-5.0.0.GA\server\default\deploy\jbossweb.sar”中server.xml里面修改成:
<Connector protocol="HTTP/1.1" port="89" address="0.0.0.0"
connectionTimeout="20000" redirectPort="8443"
URIEncoding="utf-8" />
port是你要修改外部的访问端口,默认是8080,你发布项目以后可能会改成80,加上URIEncoding=”UTf=8”是保证url传参数是utf-8传输的
第二,给后台加上权限控制。http://localhost:8080/jmx-console/ 直接可以进入。
修改方法如下
1. default\deploy\jmx-console.war\WEB-INF 目录下的两个文件 web.xml 和 jboss-web.xml
web.xml中去掉<security-constraint>注释
jobss-web.xml中去掉<security-domain>注释
以上是开启了认证,默认帐户密码是admin/admin
2. 如果修改密码修改如下文件
\server\default\conf\props
中的jmx-console-users.properties 中admin=admin 格式是用户名=密码,修改后面的admin就可以修改密码
三.
JVM的优化。这一步也是至关重要的,首先来普及一下jvm的基础知识
Jvm分为主要为两大块 ,一个是heap和 no heap ,。
Heap包括三个区域. Eden space ,survivor space ,tenured space.其中surivor
space包括两个区,一个是from,一个是to区。下面描述个部分的职责:
Eden是负责新对象的创建区域。当新对象无法在eden区创建的时候,eden区会进行minor
gc,会将一些失效的对象清除。会将清除下来的部分对象放到survivor space区域或者tenured space区域。当tenured
space的对象越来越多的时候,达到jvm内存不足10%的时候,会进行一次full gc来释放对象。项目要尽可能少的full gc ,应为full
gc比较占用内存,一般要求吞吐量比较大的时候,尽量的将new区域设置的比较大一点。也就是eden和survivor这个区域。
下面简要的说一下配置参数
在\bin目录下run.bat文件 用记事本打开 找到
set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m
-XX:MaxPermSize=256m
-Xms=128m这是heap初始化大小。32bit操作系统最大在1.5g-2g之间。64位的无限制
-Xmx=512m 这是heap最大的大小。尽量的将-Xms和-Xmx大小设置相同,这样避免内存重新分配影响性能
-Xss=128k
线程初始化大小,5.0之前默认是128k,之后为1m,线程机器最大为3000-5000
-XX:MaxPermSize=256m.这是表明持久类,也就是noheap区域的最大为256
-XX:PermSize=256m这个持久区域初始化为256m,一般持久类的大小是64m
这个配置是最常用的配置。如果需要考虑到吞吐量,那么new space和old space你就得重新分配一下
-XX:NewRatio=4
设置年轻代(包括Eden和两个Survivor区)与年老代的比值(除去持久代)。设置为4,则年轻代与年老代所占比值为1:4,年轻代占整个堆栈的1/5
-XX:SurvivorRatio=4
设置年轻代中Eden区与Survivor区的大小比值。设置为4,则两个Survivor区与一个Eden区的比值为2:4,一个Survivor区占整个年轻代的1/6
-XX:MaxTenuringThreshold=0
设置垃圾最大年龄。如果设置为0的话,则年轻代对象不经过Survivor区,直接进入年老代。
对于年老代比较多的应用,可以提高效率。如果将此值设置为一个较大值,则年轻代对象会在Survivor区进行多次复制,这样可以增加对象再年轻代的存活
时间,增加在年轻代即被回收的概论
Jvm垃圾收集器包括三种:串行,并行,并发
串行:处理小型数据,jdk1.4之前默认使用
并行:1.5和1.5之后使用,处理
典型配置:
? java -Xmx3800m -Xms3800m -Xmn2g
-Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20
-XX:+UseParallelGC:选择垃圾收集器为并行收集器。此配置仅对年轻代有效。即上述配置下,年轻代使用并发收集,而年老代仍旧使用串行收集。
-XX:ParallelGCThreads=20:配置并行收集器的线程数,即:同时多少个线程一起进行垃圾回收。此值最好配置与处理器数目相
?
java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC
-XX:ParallelGCThreads=20 -XX:+UseParallelOldGC
-XX:+UseParallelOldGC:配置年老代垃圾收集方式为并行收集。JDK6.0支持对年老代并行收集。
? java
-Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:MaxGCPauseMillis=100
-XX:MaxGCPauseMillis=100:设置每次年轻代垃圾回收的最长时间,如果无法满足此时间,JVM会自动调整年轻代大小,以满足此值。
? java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC
-XX:MaxGCPauseMillis=100 -XX:+UseAdaptiveSizePolicy
-XX:+UseAdaptiveSizePolicy:设置此选项后,并行收集器会自动选择年轻代区大小和相应的Survivor区比例,以达到目标系统规定的最低相应时间或者收集频率等,此值建议使用并行收集器时,一直打开。
? 响应时间优先的并发收集器
如上文所述,并发收集器主要是保证系统的响应时间,减少垃圾收集时的停顿时间。适用于应用服务器、电信领域等。
典型配置:
? java -Xmx3550m -Xms3550m -Xmn2g -Xss128k
-XX:ParallelGCThreads=20 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC
-XX:+UseConcMarkSweepGC:设置年老代为并发收集。测试中配置这个以后,-XX:NewRatio=4的配置失效了,原因不明。所以,此时年轻代大小最好用-Xmn设置。
-XX:+UseParNewGC:设置年轻代为并行收集。可与CMS收集同时使用。JDK5.0以上,JVM会根据系统配置自行设置,所以无需再设置此值。
? java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseConcMarkSweepGC
-XX:CMSFullGCsBeforeCompaction=5 -XX:+UseCMSCompactAtFullCollection
-XX:CMSFullGCsBeforeCompaction:由于并发收集器不对内存空间进行压缩、整理,所以运行一段时间以后会产生“碎片”,使得运行效率降低。此值设置运行多少次GC以后对内存空间进行压缩、整理。
-XX:+UseCMSCompactAtFullCollection:打开对年老代的压缩。可能会影响性能,但是可以消除碎片
常见配置汇总
1. 堆设置
o -Xms:初始堆大小
o -Xmx:最大堆大小
o -XX:NewSize=n:设置年轻代大小
o -XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4
o
-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:Survivor=3:2,一个Survivor区占整个年轻代的1/5
o -XX:MaxPermSize=n:设置持久代大小
2. 收集器设置
o -XX:+UseSerialGC:设置串行收集器
o -XX:+UseParallelGC:设置并行收集器
o -XX:+UseParalledlOldGC:设置并行年老代收集器
o
-XX:+UseConcMarkSweepGC:设置并发收集器
3. 垃圾回收统计信息
o -XX:+PrintGC
o
-XX:+PrintGCDetails
o -XX:+PrintGCTimeStamps
o -Xloggc:filename
4.
并行收集器设置
o -XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数。并行收集线程数。
o
-XX:MaxGCPauseMillis=n:设置并行收集最大暂停时间
o
-XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n)
5. 并发收集器设置
o
-XX:+CMSIncrementalMode:设置为增量模式。适用于单CPU情况。
o
-XX:ParallelGCThreads=n:设置并发收集器年轻代收集方式为并行收集时,使用的CPU数。并行收集线程数。
一. Jboss后台启动:
添加后台修改命令:
vi
run.sh
while true; do
if [ "x$LAUNCH_JBOSS_IN_BACKGROUND" = "x" ];
then
# Execute the JVM in the foreground
nohup "$JAVA"
$JAVA_OPTS \
-Djava.endorsed.dirs="$JBOSS_ENDORSED_DIRS" \
-classpath "$JBOSS_CLASSPATH" \
org.jboss.Main "$@"
JBOSS_STATUS=$?
else
# Execute the JVM in the background
"$JAVA" $JAVA_OPTS \
-Djava.endorsed.dirs="$JBOSS_ENDORSED_DIRS"
\
-classpath "$JBOSS_CLASSPATH" \
org.jboss.Main "$@"
&
JBOSS_PID=$!
# Trap common signals and relay them to the
jboss process
trap "kill -HUP $JBOSS_PID" HUP
trap "kill
-TERM $JBOSS_PID" INT
trap "kill -QUIT $JBOSS_PID" QUIT
trap
"kill -PIPE $JBOSS_PID" PIPE
trap "kill -TERM $JBOSS_PID" TERM
# Wait until the background process exits
WAIT_STATUS=0
while
[ "$WAIT_STATUS" -ne 127 ]; do
JBOSS_STATUS=$WAIT_STATUS
wait $JBOSS_PID 2>/dev/null
WAIT_STATUS=$?
done
fi
# If restart doesn't work, check you are running JBossAS 4.0.4+
# http://jira.jboss.com/jira/browse/JBAS-2483
# or the
following if you're running Red Hat 7.0
# http://developer.java.sun.com/developer/bugParade/bugs/4465334.html
if [ $JBOSS_STATUS -eq 10 ]; then
echo "Restarting
JBoss..."
else
exit $JBOSS_STATUS
fi
done &
二.
Jboss内存优化:
修改这个两参数,给jvm分配适当的内存,一般为服务器的3/4内存量,推荐至少使用4G内存。
另外添加两个参数
-XX:+UseParallelGC -XX:+UseParallelOldGC 这两个让服务并行回收内存空间。修改完成后,大致为 JAVA_OPTS =
“-Xms4096m -Xmx8192m -XX:+UseParallelGC -XX:+UseParallelOldGC -Dsum……
三.
Jboss日志输出模式
[root@190MEM conf]#
pwd
/usr/local/jboss/server/default/conf
[root@190MEM conf]# vi
jboss-log4j.xml
<appender name="FILE"
class="org.jboss.logging.appender.DailyRollingFileAppender">
<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
<param name="File" value="${jboss.server.log.dir}/server.log"/>
<param name="Append" value="false"/>
<param
name="Threshold" value="ERROR"/>
四.
Jboss数据库连接池优化
修改数据库连接池:
<datasources>
<local-tx-datasource>
<jndi-name>training_master_db</jndi-name>
<connection-url>jdbc:mysql://211.100.192.128:3306/dts?useUnicode=true&characterEncoding=UTF-8</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password></password>
<min-pool-size>100</min-pool-size>
<max-pool-size>500</max-pool-size>
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
五.
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
六.
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
一、 前言:
Jboss默认安装以后,会默认打开http://127.0.0.1,显示如下:
JBoss Online Resources
? JBoss 4.0 documentation
? JBoss Wiki
?
JBoss forums
JBoss Management
? Tomcat status (full) (XML)
? JMX
Console
? JBoss Web Console
Jmx Console和Jboss Web Console
里面可以修改和删除应用的参数,如果不加强安全设置,将会带来严重安全后果。
二、 关闭管理端口和相关统计信息:
1、 关闭jmx-console:
删除
/export/home/jboss-4.0.3SP1/server/default/deploy下目录jmx-console.war、management
2、 关闭web-console:
删除
/export/home/jboss-4.0.3SP1/server/default/deploy/jbossweb-tomcat55.sar下目录ROOT.war
3、 关闭status统计信息:
修改/export/home/jboss-4.0.3SP1/server/default/deploy/ROOT.war/WEB-INF/web.xml
屏蔽其中jboss的内容:粗体为添加屏蔽符号:
<!--display-name>Welcome to JBoss
</display-name>
<description>
Welcome to JBoss
</description>
<servlet>
<servlet-name>Status
Servlet </servlet-name>
<servlet-class>org.jboss.web.tomcat.tc5.StatusServlet
</servlet-class>
</servlet-->
<!--servlet-mapping>
<servlet-name>Status Servlet </servlet-name>
<url-pattern>/status </url-pattern>
</servlet-mapping-->
4、 删除jboss主页相目录和文件:
/export/home/jboss-4.0.3SP1/server/default/deploy/ROOT.war下:Manager/favicon.ico/jboss.css/jbossindex.html/logo.gif
lion:/export/home/jboss-4.0.3SP1/server/default/deploy/ROOT.war # rm -rf
manager favicon.ico jboss.css jbossindex.html logo.gif
5、 备注:
三、 关闭完成测试:
1、 http://127.0.0.1/jmx-console
2、 http://127.0.0.1/web-console
3、
http://127.0.0.1/jbossindex.html
4、 http://127.0.0.1/status
5、 测试结果:
测试人 时间
服务器 jmx-console web-console status jbossindex.html 测试
jboss默认配置了以下服务:
? JMX Console
? JBoss Web
Console
为了安全起见,需要用户通过授权进行访问。
一、JMX安全配置
STEP 1:
找到%JBOSS_HOME%/server/default/deploy/jmx-console.war/WEB-INF/jboss-web.xml文件,根据说明,去掉注释。
<jboss-web>
<security-domain>java:/jaas/jmx-console</security-domain>
</jboss-web>
STEP 2:
与jboss-web.xml同级目录下还有一个文件web.xml,找到其中的节点,根据说明,取消注释。
<security-constraint>
<web-resource-collection>
<web-resource-name>HtmlAdaptor</web-resource-name>
<description>An example security config that only allows users with the
role JBossAdmin to access the HTML JMX console web application
</description>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>JBossAdmin</role-name>
</auth-constraint>
</security-constraint>
STEP 3:
在第一步中的jmx-console安全域和第二步中的运行角色JBossAdmin都是在login-config.xml中配置,我们在%
<application-policy name = "jmx-console">
<authentication>
<login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
flag = "required">
<module-option name="usersProperties">props/jmx-console-users.properties</module-option>
<module-option name="rolesProperties">props/jmx-console-roles.properties</module-option>
</login-module>
</authentication>
</application-policy>
文件props/jmx-console-users.properties定义了用户名、密码;props/jmx-console-roles.properties定义了用户所属角色
注:
jmx-console-users.properties
格式是:用户名=密码明文
jmx-console-roles.properties
格式是:用户名=角色1,角色2,角色3
二、WEB-CONSOLE的安全配置
STEP
1:
找到%JBOSS_HOME%/server/default/deploy/
management/console-mgr.sar/web-console.war/WEB-INF/jboss-web.xml文件,根据说明,去掉注释。
<jboss-web>
<depends>jboss.admin:service=PluginManager</depends>
</jboss-web>
STEP
2:
与jboss-web.xml同级目录下还有一个文件web.xml,找到其中的节点,根据说明,取消注释。
<security-constraint>
<web-resource-collection>
<web-resource-name>HtmlAdaptor</web-resource-name>
<description>An example security config that only allows users with the
role JBossAdmin to access the HTML JMX console web application
</description>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>JBossAdmin</role-name>
</auth-constraint>
</security-constraint>
STEP
3:
在本目录的classes文件夹下找到web-console-users.properties和web-console-roles.properties两个文件更名为:
<application-policy name = "web-console">
<authentication>
<login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
flag = "required">
<module-option name="usersProperties">users.properties</module-option>
<module-option name="rolesProperties">roles.properties</module-option>
</login-module>
</authentication>
</application-policy>
启动服务输入http://localhost:8080/
然后分别点击JMX
Console以及Jboss Web
Console测试安全机制
user.properties和role.propertie并修改users.properties其中的用户名和密码修改%JBOSS_HOME%/server/default/conf/login-config.xml中web-console节点修改为以下:
到后自行修改或重新定义用户名、密码。JBOSS_HOME%/server/default/config下找到它。查找名字为:jmx-console的application-policy:
http://wiki.jboss.org/wiki/Wiki.jsp?page=SecureTheJmxConsole
http://jira.jboss.com/jira/secure/attachment/12313981/index.html
http://wiki.jboss.org/wiki/Wiki.jsp?page=SecureTheJmxConsole
http://jira.jboss.com/jira/secure/attachment/12313981/index.html
(转)JBoss,
Tomcat等WEB服务器的优化策略
硬件优化
可以用双CPU,增大内存等方法,这里就不提了。
配置优化
我们可以通过修改JBoss的配置来加以优化。
1,修改Tomcat的JSP自动编译配置项:
打开文件:deploy/jbossweb-tomcat50.sar/conf/web.xml,并找到
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>development</param-name>
<param-value>false</param-value>
</init-param>
为其追加development=false
告诉tomcat在用户访问时不必作JSP文件是否已被修改的检查。因为reloading默认为true,
一旦有JSP被修改了,Tomcat会自动启动back程序对被修改的jsp加以编译。如果
确认你的jsp不会做任何修改的话,可以把reloading设置为false。或则把checkInterval值调大点[默认为300秒检查一次]。
2,修改log输出配置:
JBoss使用log4j来记录log。要修改log配置,找到conf/log4j.xml文件。
修改方法:
--------------------
把log输出调到最高级别:ERROR
对某些package,还可以自定义其输出的级别。因为比较简单,具体修改方法参考conf/log4j.xml里相关部分。
3,为你的JBoss廋身
JBoss启动时,会加载很多服务(service),如果你确认不会用到这些服务,可以去掉它们。
1)邮件服务(mail-service)
server/yourservername/deploy/mail-service.xml
server/yourservername/lib/mail* (mail-plugin.jar, mail.jar)
server/yourservername/lib/activation.jar (Java Activation
Framework)
2)删除server/yourservername/deploy/下的以下目录或文件(没用到的情况下)
http-invoker.sar
jboss-aop.deployer
jboss-hibernate.deployer
jboss-ws4ee.sar
jms
等
发表评论
-
非对称加密算法-DH算法
2014-11-04 10:53 1457http://blog.csdn.net/kongqz/a ... -
非对称加密算法-RSA算法
2014-11-04 10:52 982一、概述 1、RSA是基于大数因子分解难题。目前各种主流 ... -
OAuth的机制原理讲解及开发流程
2014-11-04 10:01 791本想前段时间就把自己通过QQ OAuth1.0、OAuth2 ... -
FindBugs规则整理
2014-10-30 12:46 1939http://blog.csdn.net/jdsjlzx/a ... -
Java网络编程——远程通讯可选技术及原理
2014-10-28 17:40 648(此文系转载,具体出 ... -
UML类图几种关系的总结
2014-10-25 18:13 701在UML类图中,常见的有以下几种关系: 泛化(Gene ... -
关联、组合、聚合、依赖关系比较
2014-10-25 17:06 639类之间的关系种类: Generalization(泛化), ... -
组合,聚合,关联,依赖 的区别
2014-10-25 12:37 760依赖与关联 依赖(Depen ... -
设计指导原则
2014-10-18 15:38 814http://www.cnblogs.com/netfocu ... -
Java缩略图生成库之Thumbnailator应用说明
2014-10-12 18:17 747Thumbnailator 是一个为Java界面更流畅的缩略 ... -
spring mvc 使用jcrop进行头像剪切
2014-10-12 17:33 1450源码下载地址:http://download.csdn.n ... -
Lucene / Solr 开发经验
2014-10-08 22:06 900转自 Lucene/Solr开发经 ... -
高并发量网站解决方案
2014-10-08 22:03 713一个小型的网站,可以使用最简单的html静态页面就实现了,配 ... -
response.setHeader()的用法
2014-08-04 11:35 680response.setHeader()的用 ... -
iBatis整理——Spring环境下批处理实现
2014-07-09 11:09 425http://snowolf.iteye.com/blog/ ... -
Java NIO系列教程(八) SocketChannel
2014-09-14 11:06 539原文链接 作者:Jakob Jenkov ... -
Java NIO系列教程(七) FileChannel
2014-07-06 17:54 0原文链接 作者:Jakob Jenkov 译 ... -
Java NIO系列教程(六) Selector
2014-07-06 17:53 0原文链接 作者:Jakob Jenkov 译者:浪迹v 校对 ... -
Java NIO系列教程(五) 通道之间的数据传输
2014-07-06 17:53 0原文地址:http://tutorials.jenkov. ... -
Java NIO系列教程(四) Scatter/Gather
2014-07-06 17:52 431Java NIO开始支持scatter/gather,sca ...
相关推荐
### JBoss优化配置详解 #### 一、JBoss后台启动 在JBoss的启动脚本中,通过修改`run.sh`或`run.bat`(视操作系统而定)可以实现JBoss服务的后台运行。这对于生产环境下的服务器尤其重要,因为这能够避免控制台输出...
JBOSS优化配置是针对企业级Java应用服务器JBoss进行性能提升的重要环节,涉及多个方面,包括后台启动、内存管理、日志输出模式以及数据库连接池的调整。下面将详细介绍这些知识点。 一、JBOSS后台启动: 在JBOSS的...
### JBoss优化配置详解 #### 一、JavaOPTS设置 在JBoss的优化配置中,JavaOPTS的设置对于提升应用服务器的性能至关重要。Java虚拟机(JVM)的内存管理主要包括两大块:堆内存(Heap)和非堆内存(Non-Heap)。 **堆内存...
### JBoss + 优化配置详解 #### 一、JBoss后台启动优化 JBoss作为一款广泛使用的Java应用服务器,其启动方式的选择对于系统的稳定性和性能至关重要。后台启动可以使JBoss在启动后不会阻塞终端,方便进行其他操作或...
### JBoss配置虚拟路径详解 在企业级应用服务器领域,JBoss ...综上所述,JBoss中虚拟路径的配置是一项既能提升应用灵活性又能优化服务器性能的重要工作,开发者应充分理解其工作原理,并结合实际需求进行合理的配置。
JBoss7.1.1配置指南及管理员手册是一份全面的指南,旨在帮助用户理解和配置JBoss应用服务器的各个方面的设置和管理。本文将重点介绍JBoss7.1.1的核心特性和管理员需要了解的关键概念,包括JBoss的主要版本特性、...
本配置指南将深入探讨JBoss服务器的配置和优化,帮助你更好地理解和管理这个强大的平台。 1. **安装与启动** - JBoss的下载:首先,你需要从Red Hat的官方网站获取最新版本的JBoss服务器,通常包括EAP(企业应用...
JBoss 7 是其一个重要的版本,它引入了许多新特性和性能优化。在 JBoss 7 中配置 JMS(Java Message Service)是实现企业级分布式通信和异步处理的关键步骤。JMS 是一个标准,定义了应用程序如何通过消息传递系统...
本配置指南旨在详细阐述JBoss 7.1.1的特性、配置方法以及管理实践,帮助用户深入了解并有效地利用该版本。 1. **JBoss 版本特性** - **JBoss 4**:引入了模块化架构,增强了安全管理,支持EJB 3.0。 - **JBoss 5*...
【JBoss集群配置详解】 JBoss,作为一款开源的应用服务器,是Java EE平台的重要实现,为企业级应用提供了强大的运行环境。在大型系统中,为了提高服务的可用性、可扩展性和负载均衡,常常需要配置集群。本文将深入...
【标题】:“MyEclipse中配置JBoss” 在IT行业中,MyEclipse是一款深受开发者喜爱的集成开发环境(IDE),尤其对于Java EE项目...同时,熟练掌握这种集成环境的配置,对于提高开发效率,优化项目管理具有重要意义。
《JBOSS7配置及管理员手册》:深入解析与实操指南 ### JBOSS各主要版本特性概览 #### JBOSS4特性 - **模块化架构**:引入了更为灵活的模块化设计,提高了应用程序的可扩展性和可维护性。 - **企业级功能**:加强了...
正确配置和理解这些参数对于优化性能、提升稳定性至关重要。在实际操作中,务必注意备份原有配置文件,以免误改导致问题。同时,定期查看日志文件有助于排查和解决问题。 总结,JBoss的配置是一个涉及多个层面的...
2. JBoss服务器的配置文件:JBoss的配置主要涉及配置文件,通常位于“JBOSS_HOME/standalone/configuration”路径下,其中“standalone.xml”是JBoss服务器运行时使用的主要配置文件,而“standalone-full.xml”则是...
总之,WebLogic和JBoss的集群配置与参数优化是保证大型企业系统稳定性和高效运行的重要环节。每个环境都有其独特的需求,因此在实际操作中,应结合具体情况灵活调整配置和优化参数。通过深入理解这两种应用服务器的...
本文将深入解析如何在JBoss中配置MySQL的JNDI数据源,确保应用程序能够高效、稳定地访问数据库资源。 ### JBoss与JNDI的关联 JBoss作为一个高性能的Java应用服务器,提供了丰富的功能支持企业级应用开发。JNDI作为...
- **优化标准配置文件**:修改`.jboss/server/default/conf/standardjaws.xml`、`standardjboss.xml`、`standardjbosscmp-jdbc.xml`等标准配置文件中的设置,以适应当前的应用环境。 - **登录配置优化**:对`.jboss/...
### JBoss7配置指南及管理员手册 #### JBoss7配置说明及核心管理概念 JBoss7作为一款先进的Java应用服务器,其配置与管理对于确保应用的高效稳定运行至关重要。本文档将详细介绍JBoss7的核心配置及管理概念,帮助...
【JBOSS4.2基本配置详解】 JBOSS4.2是一款开源的...通过熟练掌握这些配置,你可以有效地管理和优化JBOSS4.2服务器,确保应用程序的稳定运行。在实际操作中,应结合官方文档和实践经验,灵活调整配置以满足特定需求。
在Linux环境下配置JBoss6.0与JDK7.0是一项关键的任务,因为这两个组件是许多企业级Java应用的基础。JBoss是一个流行的开源应用服务器,它支持Java...在实际环境中,还应考虑配置日志、安全管理以及性能优化等高级设置。