ce97
作者ce97·2015-04-07 21:37
软件开发工程师·某某某

JBOSS AS 性能调整优化

字数 4173阅读 1410评论 0赞 0

1 减少日志的输出量

*jboss-4.2.3.GAserverdefaultconfjboss-log4j.xml

根据不同的日志级别:一共有5个等级,越往下输出的东西越详细。一般没什么特殊情况,调整为warn或者info即可

  1. FATAL 0
  2. ERROR 3
  3. WARN 4
  4. INFO 6
  5. DEBUG 7

日志文件输出

  1. <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
  2.       <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
  3.       <param name="File" value="${jboss.server.log.dir}/server.log"/>#日志文件输出的目录
  4.       <param name="Append" value="false"/>
  5.       <param name="Threshold" value="INFO" /> #主要是这个
  6.       <layout class="org.apache.log4j.PatternLayout">
  7.          <!-- The default pattern: Date Priority [Category] Messagen -->
  8.          <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>

  9.          <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Messagen
  10.          <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
  11.           -->
  12.       </layout>
  13.    </appender>

控制台日志输出

   

  1. <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
  2.       <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
  3.       <param name="Target" value="System.out"/>#日志文件输出格式,直接输出在终端
  4.       <param name="Threshold" value="INFO"/>#主题要是这个

  5.       <layout class="org.apache.log4j.PatternLayout">
  6.          <!-- The default pattern: Date Priority [Category] Messagen -->
  7.          <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
  8.       </layout>
  9.    </appender>

2 删除不需要的服务

3 调节热部署程序来关闭自动扫描功能或增加扫描之间的等待时间

4 数据源

*jboss-4.2.3.GAserverdefaultdeploy*-ds.xml

  1. <idle-timeout-minutes>5</idle-timeout-minutes> #回收不再需要的连接之前应用服务器需要等待的时间量

  2. <min-pool-size>40</min-pool-size> #最小的连接量

  3. <max-pool-size>40</max-pool-size> #最大的连接量

  4. <query-timeout>300</query-timeout>

  5. <use-fast-fail>true</use-fast-fail>

如果测试项目对数据库的操作平稳,最小数目与最大数目相同即可

如果项目属于有高峰期的那种,那还是设置较小的连接池大小,应付无压力的时期。较高的连接池大小应付高峰期。

这个值尽量不要设置太大,给数据库服务器造成压力,如果宕机,是个很严重的问题。

5 配置线程池

*jboss-4.2.3.GAserverdefaultdeployjboss-web.deployerservice.xml

  1. <Connector port="80" address="${jboss.bind.address}"
  2.         maxThreads="250" #处理请求的最大线程数。限制同时处理的请求数
  3.         maxHttpHeaderSize="8192"
  4.         emptySessionPath="true" protocol="HTTP/1.1"
  5.         enableLookups="false"
  6.         redirectPort="443"
  7.         acceptCount="100"#排队等待一个线程空闲的最大请求数。如果队列满了,应用服务器会返回一个503HTTP错误
  8.         connectionTimeout="20000"
  9.         disableUploadTimeout="true"
  10. />

线程太大,会占用资源,太小,又不够请求。所以应该根据自己的工程,自己推算线程数。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广