亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Tomcat 5.5.23 文檔閱讀Tips 2 - Setup,有JSVC

系統 1808 0
本文雖然是Setup,但是沒有講最generic的安裝方法,那就是直接將Tomcat解開,然后配置好JAVA_HOME,用$CATALINA_HOME/bin/startup.sh(.bat)來啟動Tomcat,這是最普通的做法。本文重點介紹的是更好的一種方法,那就是在windows和linux下都把Tomcat跑成一個service/daemon。?

1. 在windows下的安裝非常簡單。Tomcat 5本身就帶了一個exe格式的安裝文件,直接雙擊這個文件就可以開始安裝,安裝過程中還可以選擇是否將Tomcat配置成一個windows的service,非常好用。?

2. 重點是UNIX/Linux下的安裝。要讓Tomcat在Linux下跑成一個daemon,需要jsvc,這個東西來自apache common daemon project,所以在$CATALINA_HOME/bin目錄下我們能看到jsvc.tar.gz和common-daemon.jar這些文件。在Linux下安裝jsvc必需要手動編譯,如下:?

CODE:? SELECT ALL
cd $CATALINA_HOME/bin
tar xvfz jsvc.tar.gz
cd jsvc-src
autoconf
chmod u+x configure
./configure
make
cp jsvc ..
cd ..


這里我們看到,首先執行了一個autoconf這個命令,這個東西會在當前目錄下查找configure.in這樣的文件,然后生成configure腳本,其實我個人覺得這個沒有必要,因為jsvc這個包解開就有了configure腳本,不過既然文檔這么說,就做一下吧;然后我們chmod u+x configure給configure腳本加上可執行權限。make完成后就會在當前目錄生成jsvc可執行文件,我們將其拷貝到了上一層目錄,也就是$CATALINA_HOME/bin下面。

然后文檔就給出了一個用jsvc啟動Tomcat的例子:

CODE:? SELECT ALL
cd $CATALINA_HOME
./bin/jsvc -Djava.endorsed.dirs=./common/endorsed -cp ./bin/bootstrap.jar \
? ? ? ? ? ? ? -outfile ./logs/catalina.out -errfile ./logs/catalina.err \
? ? ? ? ? ? ? org.apache.catalina.startup.Bootstrap


這個是可以的,我已經試過了。不過jsvc還提供了一個更好的東西,一個可以放在/etc/init.d目錄下的一個腳本的template。這里文檔中有兩個錯誤,第一就是這個腳本是位于:$CATALINA_HOME/bin/jsvc-src/native目錄下,而不是$CATALINA_HOME/bin/jsvc/native目錄下;第二就是tomcat 5.5.23中有一個Tomcat5.sh的template,而不是只有tomcat.sh這個腳本。文檔中說tomcat.sh這個腳本是給tomcat 4用的,不能給tomcat 5用,需要手動修改一下,其實$CATALINA_HOME/bin/jsvc-src/native目錄下有一個Tomcat5.sh的template,正好給我們用,這里我修改了一下,并且測試了一下,下面給出我修改好的這個腳本(我把這個腳本取名tomcat,放在了/etc/init.d目錄下,權限設成了755):

CODE:? SELECT ALL
#!/bin/sh
#
# chkconfig: 35 95 95
# description: tomcat start/stop scripts
#
##############################################################################
#
#? ?Copyright 2004 The Apache Software Foundation.
#
#? ?Licensed under the Apache License, Version 2.0 (the "License");
#? ?you may not use this file except in compliance with the License.
#? ?You may obtain a copy of the License at
#
#? ? ? ?http://www.apache.org/licenses/LICENSE-2.0
#
#? ?Unless required by applicable law or agreed to in writing, software
#? ?distributed under the License is distributed on an "AS IS" BASIS,
#? ?WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#? ?See the License for the specific language governing permissions and
#? ?limitations under the License.
##############################################################################
#
# Small shell script to show how to start/stop Tomcat using jsvc
# If you want to have Tomcat running on port 80 please modify the server.xml
# file:
#
#? ? <!-- Define a non-SSL HTTP/1.1 Connector on port 80 -->
#? ? <Connector className="org.apache.catalina.connector.http.HttpConnector"
#? ? ? ? ? ? ? ?port="80" minProcessors="5" maxProcessors="75"
#? ? ? ? ? ? ? ?enableLookups="true" redirectPort="8443"
#? ? ? ? ? ? ? ?acceptCount="10" debug="0" connectionTimeout="60000"/>
#
# That is for Tomcat-5.0.x (Apache Tomcat/5.0)
#
# Adapt the following lines to your configuration
JAVA_HOME=/usr/java/jdk1.5.0_07
CATALINA_HOME=/root/apache-tomcat-5.5.23
DAEMON_HOME=/root/apache-tomcat-5.5.23/bin
#TOMCAT_USER=tomcat5
# Added by Eric Zhang
JVM_MODE=server

# for multi instances adapt those lines.
TMP_DIR=/tmp
PID_FILE=/var/run/jsvc.pid
CATALINA_BASE=/root/apache-tomcat-5.5.23

CATALINA_OPTS=""
CLASSPATH=$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/bin/commons-daemon.jar:$CATALINA_HOME/bin/bootstrap.jar

# we ignore the -user $TOMCAT_USER line
# and we added the -jvm $JVM_MODE line
# add -debug before the org.apache.catalina.startup.Bootstrap line if you want to see debug infos

case "$1" in
? start)
? ? #
? ? # Start Tomcat
? ? #
? ? $DAEMON_HOME/jsvc \
? ? -jvm $JVM_MODE \
? ? -home $JAVA_HOME \
? ? -Dcatalina.home=$CATALINA_HOME \
? ? -Dcatalina.base=$CATALINA_BASE \
? ? -Djava.io.tmpdir=$TMP_DIR \
? ? -wait 10 \
? ? -pidfile $PID_FILE \
? ? -outfile $CATALINA_HOME/logs/catalina.out \
? ? -errfile $CATALINA_HOME/logs/catalina.err \
? ? $CATALINA_OPTS \
? ? -cp $CLASSPATH \
? ? -verbose:gc \
? ? org.apache.catalina.startup.Bootstrap
? ? exit $?
? ? ;;

? stop)
? ? #
? ? # Stop Tomcat
? ? #
? ? $DAEMON_HOME/jsvc \
? ? -stop \
? ? -pidfile $PID_FILE \
? ? org.apache.catalina.startup.Bootstrap
? ? exit $?
? ? ;;

? *)
? ? echo "Usage tomcat.sh start/stop"
? ? exit 1;;
esac


從上可以看到,我把chkconfig的東西也加了進去,而且在原有template的基礎上,加入了JVM_MODE的設定,讓JVM跑在server模式下,對-verbose也修改成了-verbose:gc,因為我們目前只關注gc的動作,看是否有內存泄漏......具體看腳本吧。最后用chkconfig --add tomcat就可以把tomcat加到啟動中,下次重啟機器,tomcat就起來了。在ps進程中可以看到兩個jsvc的進程,都是jsvc啟動起來的,這兩個進程進程pid正好相差1,很明顯是jsvc執行的時候fork了一個子進程。?

上面的tomcat腳本基本涵蓋了jsvc所有常用的option,我們可以jsvc -help來查看所有jsvc支持的option,常用的就是上面列出的,象-jvm, -cp, -outfile, -errfile這些。看看stop部分,stop tomcat的時候jsvc的命令行應該用-stop option。?

有一點需要注意,如果從這里將tomcat腳本拷貝出去,粘貼使用的時候,不要忘記在每個\的后面都有一個\n存在,而這個換行在tomcat腳本中是不允許的,因為這是一行命令,只是我們為了書寫好看,用\換行了而已,所以千萬記得要手動去掉每個\符號后面的換行回車符號。

Tomcat 5.5.23 文檔閱讀Tips 2 - Setup,有JSVC的重要內容


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美刺激午夜性久久久久久久 | 日韩欧美第一区二区三区 | 久久er国产精品免费观看2 | 国产成人女人视频在线观看 | 亚洲国产天堂久久综合 | 亚洲国产精品久久久久婷婷老年 | 日本在线小视频 | 久久免费精品一区二区 | 久久99视频精品 | 久热这里只有精品6 | 日韩亚射 | 第一毛片 | 四虎影在永久地址在线观看 | 国产一级黄色录像 | 深夜在线免费观看 | 午夜在线成人 | 一区二区三区免费视频 www | 国产午夜亚洲精品久久www | 日本免费人做人一区在线观看 | 99热这里只有精品免费国产 | 亚洲欧美另类久久久精品能播放的 | 亚洲国产高清视频在线观看 | 欧美日韩视频在线第一区 | 西西亚洲| 福利小视频在线 | 国产精品自在线天天看片 | 狠狠婷婷 | 999精品视频这里只有精品 | 男人天堂.com | 黄色日比视频 | 久草免费资源视频 | 一级毛片老太婆交性欧美 | 福利不卡 | 久草免费在线视频 | 深夜福利网站在线 | 热久久亚洲 | 成年人网站在线 | 奇米网狠狠 | 国产亚洲欧美日韩在线看片 | 五月天婷婷网址 | 五月色婷婷综合激情免费视频 |