﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Javaren就是爪洼人！-文章分类-Tomcat</title><link>http://www.blogjava.net/javaren/category/38255.html</link><description>一起来研究java</description><language>zh-cn</language><lastBuildDate>Mon, 16 Mar 2009 08:20:12 GMT</lastBuildDate><pubDate>Mon, 16 Mar 2009 08:20:12 GMT</pubDate><ttl>60</ttl><item><title>Configuring Tomcat 学习体会(02)</title><link>http://www.blogjava.net/javaren/articles/259792.html</link><dc:creator>Terry Lee</dc:creator><author>Terry Lee</author><pubDate>Sat, 14 Mar 2009 18:51:00 GMT</pubDate><guid>http://www.blogjava.net/javaren/articles/259792.html</guid><wfw:comment>http://www.blogjava.net/javaren/comments/259792.html</wfw:comment><comments>http://www.blogjava.net/javaren/articles/259792.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/javaren/comments/commentRss/259792.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/javaren/services/trackbacks/259792.html</trackback:ping><description><![CDATA[<strong>3. Java虚拟机配置</strong><br />
<br />
如果使用Tomcat默认配置来建设Web网站，可能会没有足够内存来响应所有的请求，并且可能会在所有客户端报错；或者有足够内存了，但是没有足够的线程，那么有些并发的访问会无法被Tomcat处理或被舍弃，造成部分客户端无法访问。下表是JVM参数说明(非Sun公司的JDK/JRE无效):<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;"><strong>用处&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; JVM选项&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 说明<br />
------------------------------------------------------------------------------------<br />
</strong>内存设置 | </span><span style="color: #000000;">-</span><span style="color: #000000;">Xms384M&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">| </span><span style="color: #000000;">设置JVM启动时的堆(heap)内存大小<br />
内存设置 </span><span style="color: #000000;">|</span><span style="color: #000000;"> -Xmx384M&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> 设置JVM可以扩展的最大堆(heap)内存大小<br />
调试安全 </span><span style="color: #000000;">|</span><span style="color: #000000;">&nbsp;-Djava.security.debug=all&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> 打开所有有关安全的调试输出<br />
调试 &nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> -enableassertions&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">| </span><span style="color: #000000;">允许声明检查(给开发人员调试代码用的)<br />
调试&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> -verbose:class&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">| </span><span style="color: #000000;">允许类加载的详细调试输出<br />
调试 &nbsp; &nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> -verbose:gc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> 允许垃圾回收器的调试输出<br />
图像 &nbsp; &nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> -Djava.awt.headless=true&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> 允许JVM运行在在没有安装图像显示软件的情况下<br />
本地化 &nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> -Duser.language=en&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> 设置Tomcat用户的语言包<br />
本地化 &nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> -Dfile.encoding=UTF-8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> 设置Tomcat用户的默认文件编码<br />
网络 &nbsp; &nbsp; </span><span style="color: #000000;">|</span><span style="color: #000000;"> -Djava.net.preferIPv4Stack=true </span><span style="color: #000000;">| </span><span style="color: #000000;">让JVM用IPv4代替IPv6，Tomcat在FreeBSD系统下需要设置该参数<br />
</span></div>
从上表可以看出，堆(heap)内存设置是最重要的。如果Tomcat的堆内存设置太小，可能会造成运行速度慢或者报出OutOfMemoryError的错误并造成不可知反应。如果设置太大了，又会浪费系统内存，甚至可能影响其他程序的正常运行。<br />
如果Tomcat JVM的启动堆内存小而扩展内存大，那么在JVM在扩展内存时会影响Tomcat的反应，造成速度变慢，所以最好是把Xms和Xmx设置一样大小，至于具体内存大小可以根据情况进行测试和调整，后面将进一步讨论。<br />
使用JAVA_OPTS参数来加载各种JVM启动参数，例如你想让Tomcat JVM运行在调试模式，并且远程用8000端口进行监控，可以使用:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">JAVA_OPTS</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">-Xdebug&nbsp;-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n</span><span style="color: #000000;">"</span></div>
这会允许你连接一个JPDA远程调试器(例如各种Java IDE)。<br />
如果你想通过JMX远程终端来做本地Tomcat监控的话可以:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">JAVA_OPTS</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">-Dcom.sun.management.jmxremote=true&nbsp;\</span><span style="color: #000000;"><br />
</span><span style="color: #000000;">-</span><span style="color: #000000;">Dcom.sun.management.jmxremote.ssl</span><span style="color: #000000;">=</span><span style="color: #0000ff;">false</span><span style="color: #000000;">&nbsp;\<br />
</span><span style="color: #000000;">-</span><span style="color: #000000;">Dcom.sun.management.jmxremote.authenticate</span><span style="color: #000000;">=</span><span style="color: #0000ff;">false</span><span style="color: #000000;">"</span></div>
这样你可以用JMX控制台(例如JDK中带的jconsole)来连接本地Tomcat，如果需要连接远程的，则:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">JAVA_OPTS</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">-Dcom.sun.management.jmxremote.port=8008&nbsp;\</span><span style="color: #000000;"><br />
</span><span style="color: #000000;">-</span><span style="color: #000000;">Dcom.sun.management.jmxremote.ssl</span><span style="color: #000000;">=</span><span style="color: #0000ff;">false</span><span style="color: #000000;">&nbsp;\<br />
</span><span style="color: #000000;">-</span><span style="color: #000000;">Dcom.sun.management.jmxremote.authenticate</span><span style="color: #000000;">=</span><span style="color: #0000ff;">false</span><span style="color: #000000;">&nbsp;\<br />
</span><span style="color: #000000;">-</span><span style="color: #000000;">Dcom.sun.management.jmxremote.password.file</span><span style="color: #000000;">=/</span><span style="color: #000000;">path</span><span style="color: #000000;">/</span><span style="color: #000000;">to</span><span style="color: #000000;">/</span><span style="color: #000000;">pw</span><span style="color: #000000;">/</span><span style="color: #000000;">file</span><span style="color: #000000;">"</span></div>
如果你要设置Tomcat本地化语言，则:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">$&nbsp;LANG</span><span style="color: #000000;">=</span><span style="color: #000000;">en_US<br />
$&nbsp;catalina.sh&nbsp;start</span></div>
或者用<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">-</span><span style="color: #000000;">Duser.language</span><span style="color: #000000;">=</span><span style="color: #000000;">en</span></div>
<br />
<img src ="http://www.blogjava.net/javaren/aggbug/259792.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/javaren/" target="_blank">Terry Lee</a> 2009-03-15 02:51 <a href="http://www.blogjava.net/javaren/articles/259792.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Configuring Tomcat 学习体会(01)</title><link>http://www.blogjava.net/javaren/articles/259789.html</link><dc:creator>Terry Lee</dc:creator><author>Terry Lee</author><pubDate>Sat, 14 Mar 2009 17:53:00 GMT</pubDate><guid>http://www.blogjava.net/javaren/articles/259789.html</guid><wfw:comment>http://www.blogjava.net/javaren/comments/259789.html</wfw:comment><comments>http://www.blogjava.net/javaren/articles/259789.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/javaren/comments/commentRss/259789.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/javaren/services/trackbacks/259789.html</trackback:ping><description><![CDATA[2. 更改端口8080<br />
<br />
直接修改server.xml当然可以修改端口了:<br />
<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">&lt;!--</span><span style="color: #000000;">&nbsp;Define&nbsp;a&nbsp;non</span><span style="color: #000000;">-</span><span style="color: #000000;">SSL&nbsp;HTTP</span><span style="color: #000000;">/</span><span style="color: #000000;">1.1</span><span style="color: #000000;">&nbsp;Connector&nbsp;on&nbsp;port&nbsp;</span><span style="color: #000000;">8080</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">--&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">Connector&nbsp;port</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">8080</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;protocol</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">HTTP/1.1</span><span style="color: #000000;">"</span><span style="color: #000000;"><br />
connectionTimeout</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">20000</span><span style="color: #000000;">"</span><span style="color: #000000;"><br />
redirectPort</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">8443</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/&gt;<br />
</span>
</div>
<img src ="http://www.blogjava.net/javaren/aggbug/259789.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/javaren/" target="_blank">Terry Lee</a> 2009-03-15 01:53 <a href="http://www.blogjava.net/javaren/articles/259789.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Configuring Tomcat 学习体会(00)</title><link>http://www.blogjava.net/javaren/articles/259569.html</link><dc:creator>Terry Lee</dc:creator><author>Terry Lee</author><pubDate>Fri, 13 Mar 2009 14:13:00 GMT</pubDate><guid>http://www.blogjava.net/javaren/articles/259569.html</guid><wfw:comment>http://www.blogjava.net/javaren/comments/259569.html</wfw:comment><comments>http://www.blogjava.net/javaren/articles/259569.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/javaren/comments/commentRss/259569.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/javaren/services/trackbacks/259569.html</trackback:ping><description><![CDATA[<strong>1.如何让不同的app使用单独的目录和配置</strong><br />
<br />
a. 先建立目录：<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">cd&nbsp;</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">opt<br />
mkdir&nbsp;tomcat</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">instance<br />
cd&nbsp;tomcat</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">instance<br />
mkdir&nbsp;groovywigs.com<br />
cd&nbsp;groovywigs.com<br />
#&nbsp;复制配置文件过去，并建立工作目录<br />
cp&nbsp;</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">a&nbsp;$CATALINA_HOME</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">conf&nbsp;.<br />
mkdir&nbsp;common&nbsp;logs&nbsp;temp&nbsp;server&nbsp;shared&nbsp;webapps&nbsp;work</span></div>
建立了以上目录后，要保证Tomcat用户有足够权限访问这些目录。<br />
<br />
b. 把web应用放到该CATALINA_BASE下的webapps子目录中，为该应用配置conf/server.xml，要确定该配置中的host和port和同服务器上其他Tomcat实例中的不同。并且给每个Tomcat实例使用不同的关闭port：<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">&lt;</span><span style="color: rgb(0, 0, 0);">Server&nbsp;port</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">8007</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;shutdown</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">SHUTDOWN</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&gt;</span></div>
还有所有connector的port:<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">&lt;!--</span><span style="color: rgb(0, 0, 0);">&nbsp;Define&nbsp;a&nbsp;non</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">SSL&nbsp;HTTP</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">1.1</span><span style="color: rgb(0, 0, 0);">&nbsp;Connector&nbsp;on&nbsp;port&nbsp;</span><span style="color: rgb(0, 0, 0);">8080</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">--&gt;</span><span style="color: rgb(0, 0, 0);"><br />
</span><span style="color: rgb(0, 0, 0);">&lt;</span><span style="color: rgb(0, 0, 0);">Connector&nbsp;port</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">8081</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;maxHttpHeaderSize</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">8192</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
maxThreads</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">150</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;minSpareThreads</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">25</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;maxSpareThreads</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">75</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
enableLookups</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">false</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;redirectPort</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">8443</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;acceptCount</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">100</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
connectionTimeout</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">20000</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;disableUploadTimeout</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">true</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">/&gt;</span></div>
删掉所有示例的Context配置和嵌套的内容(前面复制时并没复制例子app)，并根据你的web应用增加webapp配置。<br />
<br />
c. 重复上面步骤，建立其他CATALINA_BASE实例目录，如果只有一个站点，或者你只想运行一个Tomcat JVM，那就只要一个$CATALINA_BASE树就行了。<br />
<br />
d. 要启动一个实例，设置CATALINA_BASE为应用实例的绝对路径，CATALINA_HOME为Tomcat distribution安装目录绝对路径，然后正常启动Tomcat即可:<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">#&nbsp;set&nbsp;CATALINA_BASE</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/opt/tomcat-instance/groovywigs.com</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
#&nbsp;set&nbsp;CATALINA_HOME</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/opt/tomcat</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
#&nbsp;export&nbsp;CATALINA_BASE&nbsp;CATALINA_HOME<br />
#&nbsp;service&nbsp;tomcat&nbsp;start&nbsp;#&nbsp;Standard&nbsp;way&nbsp;to&nbsp;start&nbsp;on&nbsp;Linux<br />
</span></div>
要停止实例可以:<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">#&nbsp;set&nbsp;CATALINA_BASE</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/opt/tomcat-instance/groovywigs.com</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
#&nbsp;set&nbsp;CATALINA_HOME</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/opt/tomcat</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
#&nbsp;export&nbsp;CATALINA_BASE&nbsp;CATALINA_HOME<br />
#&nbsp;service&nbsp;tomcat&nbsp;stop&nbsp;#&nbsp;Standard&nbsp;way&nbsp;to&nbsp;stop&nbsp;on&nbsp;Linux</span></div>
当然，你可以自己创建脚本更方便的来启动和停止Tomcat，先建立个目录:<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">#&nbsp;cd&nbsp;</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">opt</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">tomcat</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">instance</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">groovywigs.com<br />
#&nbsp;mkdir&nbsp;bin<br />
#&nbsp;cd&nbsp;bin</span></div>
然后是shell脚本:<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">#</span><span style="color: rgb(0, 0, 0);">!/</span><span style="color: rgb(0, 0, 0);">bin</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">sh<br />
set&nbsp;CATALINA_BASE</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/opt/tomcat-instance/groovywigs.com</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
set&nbsp;CATALINA_HOME</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">/opt/tomcat</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);"><br />
export&nbsp;CATALINA_BASE&nbsp;CATALINA_HOME<br />
service&nbsp;tomcat&nbsp;start&nbsp;#&nbsp;Standard&nbsp;way&nbsp;to&nbsp;start&nbsp;on&nbsp;Linux</span></div>
修改权限:<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">#&nbsp;chmod&nbsp;</span><span style="color: rgb(0, 0, 0);">700</span><span style="color: rgb(0, 0, 0);">&nbsp;start</span></div>
执行时直接输入:<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 0);">#&nbsp;</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">opt</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">tomcat</span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);">instance</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">groovywigs.com</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">bin</span><span style="color: rgb(0, 0, 0);">/</span><span style="color: rgb(0, 0, 0);">start</span></div>
<br />
<br />
<br />
<img src ="http://www.blogjava.net/javaren/aggbug/259569.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/javaren/" target="_blank">Terry Lee</a> 2009-03-13 22:13 <a href="http://www.blogjava.net/javaren/articles/259569.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Getting started with Tomcat学习体会</title><link>http://www.blogjava.net/javaren/articles/259590.html</link><dc:creator>Terry Lee</dc:creator><author>Terry Lee</author><pubDate>Fri, 13 Mar 2009 10:10:00 GMT</pubDate><guid>http://www.blogjava.net/javaren/articles/259590.html</guid><wfw:comment>http://www.blogjava.net/javaren/comments/259590.html</wfw:comment><comments>http://www.blogjava.net/javaren/articles/259590.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/javaren/comments/commentRss/259590.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/javaren/services/trackbacks/259590.html</trackback:ping><description><![CDATA[<strong>1. 安装Tomcat</strong><br />
<br />
下面主要讨论在Linux上的安装。一般有两种类型的二进制版本安装包:<br />
多平台二进制包(Multiplatform binary releases):<br />
这种包可以安装在任何目录，使用任何用户ID，缺点是升级和卸载不方便，没有初始化脚本，不能随着系统自动启动或关闭。<br />
本地化发布包(Distribution native package):<br />
如果使用Fedora或Red Hat Linux，可以下载RPM安装包，系统的包管理器可以让你方便的进行Tomcat的升级，卸载，并有自动启动或关闭等的脚本。RPM包必须使用root用户来安装，到目前位置有两种不同的RPM发布包。<br />
<br />
<strong>2. 自动启动</strong><br />
<br />
a. 如果你使用的是RPM包安装的，它会自动设置自动启动脚本，要保证tomcat运行在2,3,4,5水平:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">#&nbsp;chkconfig&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">level&nbsp;</span><span style="color: #000000;">2345</span><span style="color: #000000;">&nbsp;tomcat&nbsp;on</span></div>
检查一下设置是否正确:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">#&nbsp;chkconfig&nbsp;</span><span style="color: #000000;">--</span><span style="color: #000000;">list&nbsp;tomcat<br />
tomcat&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">:off&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">:off&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">:on&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">:on&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">:on&nbsp;</span><span style="color: #000000;">5</span><span style="color: #000000;">:on&nbsp;</span><span style="color: #000000;">6</span><span style="color: #000000;">:off</span></div>
<br />
b. 如果是非RPM包，则需要自己编写脚本:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">#</span><span style="color: #000000;">!/</span><span style="color: #000000;">bin</span><span style="color: #000000;">/</span><span style="color: #000000;">sh<br />
#&nbsp;Tomcat&nbsp;init&nbsp;script&nbsp;</span><span style="color: #0000ff;">for</span><span style="color: #000000;">&nbsp;Linux.<br />
#<br />
#&nbsp;chkconfig:&nbsp;</span><span style="color: #000000;">2345</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">96</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">14</span><span style="color: #000000;"><br />
#&nbsp;description:&nbsp;The&nbsp;Apache&nbsp;Tomcat&nbsp;servlet</span><span style="color: #000000;">/</span><span style="color: #000000;">JSP&nbsp;container.<br />
JAVA_HOME</span><span style="color: #000000;">=/</span><span style="color: #000000;">usr</span><span style="color: #000000;">/</span><span style="color: #000000;">java</span><span style="color: #000000;">/</span><span style="color: #000000;">jdk1.</span><span style="color: #000000;">6</span><span style="color: #000000;">.0_12<br />
CATALINA_HOME</span><span style="color: #000000;">=/</span><span style="color: #000000;">usr/local/tomcat</span><span style="color: #000000;"><br />
export&nbsp;JAVA_HOME&nbsp;CATALINA_HOME<br />
exec&nbsp;$CATALINA_HOME</span><span style="color: #000000;">/</span><span style="color: #000000;">bin</span><span style="color: #000000;">/</span><span style="color: #000000;">catalina.sh&nbsp;$</span><span style="color: #000000;">*</span></div>
将上面内容保存到文件/etc/rc.d/init.d/tomcat中，并修改权限:<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">#&nbsp;chown&nbsp;root.root&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">etc</span><span style="color: #000000;">/</span><span style="color: #000000;">rc.d</span><span style="color: #000000;">/</span><span style="color: #000000;">init.d</span><span style="color: #000000;">/</span><span style="color: #000000;">tomcat<br />
#&nbsp;chmod&nbsp;</span><span style="color: #000000;">755</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/</span><span style="color: #000000;">etc</span><span style="color: #000000;">/</span><span style="color: #000000;">rc.d</span><span style="color: #000000;">/</span><span style="color: #000000;">init.d</span><span style="color: #000000;">/</span><span style="color: #000000;">tomcat</span></div>
<br />
<br />
<br />
<img src ="http://www.blogjava.net/javaren/aggbug/259590.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/javaren/" target="_blank">Terry Lee</a> 2009-03-13 18:10 <a href="http://www.blogjava.net/javaren/articles/259590.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>