Linuxのtomcatのインストールと最適化


Tomcatは、Apache財団のJakartaプロジェクトのコアプロジェクトであり、Apache、Sun、その他の会社や個人が共同で開発した無料のオープンソースSellvetコンテナです.Sunの参加とサポートにより、最新のサーブレットとJsp仕様は常にTomcatに反映されます.TomcatはJavaWorld誌の編集者に2001年度で最も革新的なjava製品に選ばれ、業界での地位を示している.
本文の主な内容:
(1)aprをインストールします.これはApacheがTomcatの性能を向上させるために作ったローカライズSocket,Thread,IO****です.つまり、高度なIO機能、オペレーティングシステムレベルの機能呼び出し、ローカルプロセス処理などがあります.
(2)Tomcat Nativeをインストールし、このプロジェクトはTomcatにApacheのaprパッケージを使用してファイルとネットワークIOを含む操作を処理させ、性能を向上させることができる.
(3)tomcatをシステムサービスにインストールする
(4)tomcatのjvmメモリプールの最適化
(5)tomcatの同時接続数の変更
 
一、aprのインストール
(1)aprのインストール
# tar zxvf apr-1.4.2.tar.gz
# cd apr-1.4.2
# ./configure --prefix=/usr/local/www/apr
# make
# make install
(2)apr-iconvのインストール
# tar -zxvf apr-iconv-1.2.1.tar.gz
# cd apr-iconv-1.2.1
# ./configure --prefix=/usr/local/www/apr-iconv --with-apr=/usr/local/www/apr
# make
# make install
(3)apr-utilのインストール
 
# tar zxvf apr-util-1.3.9.tar.gz 
# cd apr-util-1.3.9 
# ./configure --prefix=/usr/local/www/apr-util  --with-apr=/usr/local/www/apr  
--with-apr-iconv=/usr/local/www/apr-iconv/bin/apriconv  
# make 
# make install

 
二、tomcatとtomcat-nativeのインストール
(1)JDK取付
 
# chmod a+x jdk-6u18-linux-i586-rpm.bin 
# ./jdk-6u7-linux-i586-rpm.bin 
# ln -s /usr/java/jdk1.6.0_18 /usr/local/java

環境変数の設定
#vi/etc/profile末尾に以下の内容を追加JAVA_HOME=/usr/local/java CLASSPATH=/usr/local/java/lib/dt.jar:/usr/local/java/lib/tools.jar PATH=/usr/local/java/bin:$PATH export PATH JAVA_HOME CLASSPATH
# source/etc/profile
Javaバージョンを表示します.1.6の場合は、インストールに成功しました.
 # java –version
(2)Tomcatのインストール
# tar -zxvf apache-tomcat-6.0.26.tar.gz
# mv apache-tomcat-6.0.26/usr/local/www/tomcat
# vi/usr/local/www/tomcat/bin/catalina.sh加入一行:JAVA_HOME=/usr/local/java
tomcatの起動
#/usr/local/www/tomcat/bin/startup.sh
 
(3)tomcat-nativeのインストール
# cp tomcat-native-1.1.20-src.tar.gz/usr/local/www/tomcat/bin/
# cd/usr/local/www/tomcat/bin
# tar zxvf tomcat-native-1.1.20-src.tar.gz
# cd tomcat-native-1.1.20-src/jni/native
# ./configure --with-apr=/usr/local/www/apr --with-java-home=/usr/local/java
# make # make install
(4)aprの環境変数を設定する:
#vi/etc/profileの後に次のexport LD_を追加LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
環境変数がすぐに有効になります
# source/etc/profile
tomcatを起動したら、ログを見ます.
 # more/usr/local/www/tomcat/logs/catalina.out Dec 5, 2009 3:25:39 PM org.apache.catalina.core.AprLifecycleListener init INFO: Loaded APR based Apache Tomcat Native library 1.1.20.
 
三、tomcatをシステムサービスに追加する
# cd/usr/local/www/tomcat/bin/
# tar -zxvf jsvc.tar.gz
# cd jsvc-src
# chmod a+x configure
# ./configure --with-java=/usr/local/java
# make
# cp/usr/local/www/tomcat/bin/jsvc-src/native/Tomcat5.sh/etc/rc.d/init.d/tomcat
# vi/etc/rc.d/init.d/tomcat
にいる!bin/shで追加
#chkconfig: 2345 85 15 #description: apache-tomcat.6
対応する内容は次のように変更されます.
JAVA_HOME=/usr/local/java CATALINA_HOME=/usr/local/www/tomcat DAEMON_HOME=/usr/local/www/tomcat/bin TOMCAT_USER=tomcat CATALINA_BASE=/usr/local/www/tomcat CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"$DAEMON_HOME/jsvc-src/jsvc#は2箇所ございます
実行ユーザーtomcatの追加
# groupadd tomcat
# useradd -g tomcat -s/sbin/nologin -M tomcat
システムサービスに加入して、電源を入れてから起動します
# chown -R tomcat.tomcat/usr/local/www/tomcat
# chmod a+x/etc/rc.d/init.d/tomcat
# chkconfig --add tomcat
# chkconfig tomcat on
 
四、Java仮想マシンの仮想メモリを修正する
(1)tomcat管理者の追加
 
# vi /usr/local/www/tomcat/conf/tomcat-users.xml 

 <tomcat-users>  </tomcat-users>     
<role rolename="manager"/> 
<user username="tomcat" password="lin31415926" roles="manager"/> 

  username="tomcat"    password="lin31415926"   

 
(2)Java仮想マシンの仮想メモリの変更
tomcatのデフォルトのJVMは比較的小さい
JVMの表示
開くhttp://ip:8080/ 
「status」をクリックし、JVMオプションを表示
Free memory: 3.25 MB Total memory: 7.62 MB Max memory: 121.81 MB
 
 # vi/etc/init.d/tomcat在CATALINA_OPTS="-Djava.library.path=/usr/local/apr/lib"の下にJAVA_を追加OPTS="-Xms 1024 m-Xmx 1024 m-Xmn 256 m-Djava.awt.headless=true"で$CATALINA_OPTS上に$JAVAを追加OPTS\
tomcatを再起動し、JVM Free memory:953.12 MB Total memory:998.43 MB Max memory:998.43 MB
 
五、tomcat同時接続数の変更
tomcat6.0デフォルトのコンカレント数は200で、表示方法はJVMと同様にhttp-8080オプションを表示します.
Max threads: 200
# vi/usr/local/www/tomcat/conf/server.xml修正前:修正後:

 
tomcatを再起動してから再度表示