适用于AWS ElasticBeanstalk的默认tomcat server.xml

时间:2014-03-06 16:47:18

标签: performance configuration tomcat7 elastic-beanstalk

我的设置是通过Tomcat7 / Java7应用程序上的elasticBeanstalk部署的WAR。我正在用Servlet和REST做基本的HTML。没什么好看的。

我想在elasticBeanstalk下替换Tomcat7 / Java7的默认server.xml。 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers.html

我有点困惑。

  1. 我正在为那里的参数寻找合理的性能调整数字。
  2. 寻找安全性的良好默认值
  3. 我应该触摸AJP连接器吗? (每个请求都发送到servlet)我应该配置什么?
  4. 此设置是否将Apache作为前端,或者HTTP请求是否直接转到Tomcat?
  5. 我的实例在并发用户数量相对较少之后窒息,CPU占用率约为9%,并且有大量的数据库连接。我是否用server.xml跳到了结论?

    谢谢..

1 个答案:

答案 0 :(得分:1)

  1. AJP不是必需的,因为您已经提到大多数URL请求都是基于servlet的。如果您有更多静态内容可供使用,则可以使用AJP。

  2. 大多数情况下,性能调整需要在Web前端部分完成。以下是我的建议。

  3. 对网页内容使用gzip压缩。

  4. 使用缓存相关的HTTP标头(Etag,Expires,Cache-control)使您的页面可以缓存。通过这样做,您将减少不需要的HTTP请求的数量。
  5. JS和CSS可以minified以减小其大小。
  6. 检查您是否从网络抓取工具获得更多流量。如果您从那些尝试重复使用Crawler_Session_Manager_Valve的网络会话获得更多流量。
  7. 尝试索引数据库的关键表。
  8. 确保使用数据库连接池,而不是为每个新请求打开新连接。
  9. 避免不需要的网址重定向(302,304)。
  10. 如果您正在寻找可以帮助您优化网站的好书,请参阅High Performance Web Sites for O'Reilly