又要发这类环境配置随笔了,也不是俺对这些配置很感兴趣,只不过是在有当下部署问题和需求的时候,现解决一下,实属无奈。 这也就是业余和专业的区别吧。看来俺又专业些了。之前写过《最新版 apache_2.2.11 与 apache-tomcat-6.0.18 集成方案》这个方案是 以tomcat为主,把apache集成进来,但是效果并不是俺想要的,在正式需要使用的时候才发现这种方案达不到要求。很早前还有一些多端口和 多虚拟主机的随笔Tomcat6 配置多虚拟主机,多域名绑定一IP ,Tomcat6.0 配置多端口访问 。这些都是学校资源紧张,需要一台服务器部署 多个项目才搞的。 为了提高网站的访问性能,我们往往会在服务器端选择合适的部署环境。最简单的就是一个tomcat了,但是在高并发的情况下,非常 容易当机。因为tomcat配置的不优化。我最早也没有注意这些细节,因为我知道一个项目的性能不是通过搭建环境体现的,而是算法的高效,代码实 现的合理性,以及数据库的合理使用,优化技术的使用等等。不过通过优化部署环境应该说是最直接的一种方案了。目前我知道的一种tomcat优化 方案是使用tomcat线程池。只需要在server.xml中改改配置就可以了。核心配置代码: <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="1000" minSpareThreads="50" maxIdleTime="600000"/> <!-- A "Connector" represents an endpoint by which requests are received and responses are returned. Documentation at : Java HTTP Connector: /docs/config/http.html (blocking & non-blocking) Java AJP Connector: /docs/config/ajp.html APR (HTTP/AJP) Connector: /docs/apr.html Define a non-SSL HTTP/1.1 Connector on port 8080 --> <!-- <Connector port="8086" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/> --> <!-- A "Connector" using the shared thread pool--> <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 这样的性能响应能够高于默认配置不少。别的方案我还没有研究过,希望有这方面经验的朋友可以给出点建议。谢谢。 然后就是apache+tomcat的集成,我最早写的那个是围绕tomcat配置的。这次补充一个更方便也是更科学的实现, 围绕apache做集成。 需要下载的工具还是那三个,实现的第一步与我的上一篇是一样的。 1.将mod_jk-1.2.28-httpd-2.2.3.so复制到C:\Apache2.2\modules(我的apache安装目录),我把他改了下名,方便后面的操作 改名为mod_jk.so。 workers.tomcat_home=C:\Tomcat
workers.java_home=C:\Program Files\Java\jre1.5.0_05 worker.list=ajp13 worker.ajp13.port=8009 worker.ajp13.host=localhost worker.ajp13.type=ajp13 worker.ajp13.lbfactor=1 3.在apache的httpd.conf的内容底部添加配置: LoadModule jk_module modules/mod_jk.so
JkWorkersFile "C:/Tomcat/conf/workers.properties" JkLogFile "C:/Tomcat/logs/mod_jk2.log" JkLogLevel info <VirtualHost localhost> ServerAdmin @hbu.cn DocumentRoot D:/ ServerName localhost DirectoryIndex index.html index.htm index.jsp ErrorLog logs/shsc-error_log.txt CustomLog logs/shsc-access_log.txt common JkMount /servlet/* ajp13 JkMount /*.jsp ajp13 JkMount /*.do ajp13 </VirtualHost>
|
|