最新バージョン: 2.0.2-1
早見表 |
|
カタログ |
システム |
カテゴリ |
アプリケーション サーバ |
ユーザ ボリューム |
yes |
最小 メモリ |
160 MB |
OS |
Linux |
制約 |
なし |
質問/コメント |
TOMCAT は、Sun Java マシンと Apache Tomcat、Java Servlet、および Apache License の下で開発された JavaServer Pages コンテナに基づく Web サーバ アプライアンスです。 Tomcat 用のメイン ドキュメントは tomcat.apache.org にあります。 Tomcat は、サーブレットと JSP の標準準拠サポートを提供します。 Tomcat はスタンドアロン Web サーバまたはアプリケーション サーバとして動作できます。
TOMCAT は静的な Web コンテンツに対応し、自動的に Web アプリケーションを展開します。また、ユーザ設定可能なコンテンツ ボリュームからサーブレットおよび JavaServer Pages を実行します。 ドキュメントへのパスは設定可能です。したがって、同じボリュームを異なるコンテンツに対応する複数の Web サーバおよび他のアプライアンスとの間で共有できます。
TOMCAT は Web クライアントの場合に HTTP/1.1 および HTTP/1.0 プロトコルに対応し、フロントエンド サーバからのリクエストでは AJP 1.3 に対応します(たとえば、mod_proxy_ajp を使用する Apache)。
WEBx サーバと同様、TOMCAT には、コンテンツ ボリューム上のスクリプトから外部サービスにアクセスするための汎用出力端子が 3 つあります。 db 端子はさまざまなデータベースへのアクセスに使用されます。fs 端子は共有ファイル ストレージ(NFS を使用)へのアクセスに使用されます。aux 端子は SMTP サーバへ電子メールメッセージを送信するために作成されています。
log 端子は、TOMCAT がログ ファイルを格納できる共有ファイルシステムに TOMCAT を接続するために使用します。
サーバの設定はさまざまなプロパティを使用して定義されます。 これらのプロパティは簡単な設定方法でさまざまな使用状況のほとんどに対応できるように設計されていて、通常は、デフォルト以外の値に設定する必要はほとんどありません。
名前 |
最新バージョン |
OS |
Java マシン バージョン |
Apache Tomcat バージョン |
TOMCAT |
2.0.2-1 |
CentOS 5.5 |
JDK 1.6.0.22 |
6.0.29 |
TOMCAT64 |
2.0.2-1 |
CentOS 5.5 (64 ビット) |
JDK 1.6.0.22 |
6.0.29 |
TOMCAT 用のリソース
リソース |
最小 |
最大 |
デフォルト |
CPU |
0.1 |
16 |
0.3 |
メモリ |
160 MB |
4 G |
512 MB |
帯域幅 |
1 Mbps |
2 Gbps |
250 Mbps |
TOMCAT64 用のリソース
リソース |
最小 |
最大 |
デフォルト |
CPU |
0.1 |
16 |
0.3 |
メモリ |
160 MB |
64 G |
512 MB |
帯域幅 |
1 Mbps |
2 Gbps |
250 Mbps |
以下の点に留意してください。
重要: TOMCAT には 32 ビット Java マシンから継承された制限があります。 この Java マシンは約 2.6GB を超えるメモリでは動作できません。TOMCAT 用の 2.8GB 以上のメモリを割り当てることは効率的ではありません。
Java アプリケーション用のメモリに加えて、アプリケーション セッションを格納するために一定の量のメモリが使用可能である必要があります。 空のセッション(追加の格納されたデータなし)は、それぞれ 2KB に近いメモリを使用します。 このメモリはセッションの存続期間中(デフォルトのセッション存続期間は 30 分)に使用されます。 セッション存続期間は、アプリケーションの web.xml 環境設定ファイルを変更するか、セクションを追加することにより設定できます。 たとえば、以下に示すコードを含めるとセッション存続期間は 1 分になります。
<session-config> <session-timeout>1</session-timeout> <session-config>
30 分以内に 1 万人の個別ユーザが訪問することが想定される場合、追加で 20MB のメモリが使用可能である必要があります。 一般: 必要なメモリ量 = 同時にアクティブなセッションの最大数 * セッションの平均サイズ。
重要: 使用できるメモリが十分でない場合、Tomcat が正しく機能しない場合があります。 これは、Tomcat 内で実行中のユーザ アプリケーションに依存し、アプライアンス自身による制限ではありません。
名前 |
方向 |
プロトコル |
説明 |
in |
in |
HTTP |
Web クライアントから送られる HTTP リクエストを処理します。 HTTP/1.1、HTTP/1.0 および AJP プロトコルをサポートします。 |
db |
out |
任意 |
データベース サーバへのアクセス。 使用状況は、コンテンツ ボリューム上の任意のスクリプト(存在する場合)によって定義されます。 使用しない場合、この端子は未接続のままにできます。 |
fs |
out |
NFS |
NFS を介して読み取り/書き込みファイル アクセスを提供する、共有ファイル ストレージのネットワーク ファイルシステムへのアクセス。 使用状況は、コンテンツ ボリューム上の任意のスクリプト(存在する場合)によって定義されます。 コンテンツ ボリューム上のソフトウェアは、マウントされたリモート ファイルシステムを、アプライアンスのファイルシステム スペースの /mnt/fs であるとみなします。 使用しない場合、この端子は未接続のままにできます。 接続されたサーバには NFS の上にエクスポートされた /mnt/data という名前の読み取り/書き込み共有アクセス権が必要です。 |
log |
out |
CIFS |
アクセスとエラー ログを格納するための、CIFS ベースのネットワーク ファイルシステムへのアクセス。 使用しない場合、この端子は未接続のままにできます。 接続されたサーバは、匿名のログインを許可し、share という名前の読み取り/書き込みエクスポート共有を持っている必要があります。 |
aux |
out |
任意 |
電子メールを送信するための SMTP サーバへのアクセス。 |
net |
out |
任意 |
サブネット アクセス用のゲートウェイ出力です。 |
mon |
out |
CCE |
MON アプライアンスへパフォーマンスとリソースの使用状況統計を送信します。 |
デフォルト インターフェースは有効です。 診断およびトラブルシューティング(SSH を介して)用です。 このアプライアンスの将来のバージョンでは SSH アクセスが無効になる可能性があります。
ボリューム |
説明 |
コンテンツ |
Tomcat アプリケーション、アプリケーション データ、一時およびワーク ファイルのストレージ用のボリューム。 このボリュームは content_on_fs プロパティが off に設定されている場合にのみ使用されます。 |
プロパティ名 |
タイプ |
説明 |
content_on_fs |
文字列 |
コンテンツが fs 端子でファイルシステムを基準にするか、またはコンテンツ ボリューム上にあるかどうかを指定します。 デフォルト: off(コンテンツ ボリューム上) |
hostname |
文字列 |
Web サイトのホスト名。 デフォルト: localhost |
tomcat_port |
整数 |
Tomcat が受信 HTTP リクエストをリッスンするポート。 デフォルト: 8080 |
session_timeout |
整数 |
TOMCAT がユーザ セッションに関連するすべてのデータをメモリに保持する、分単位のタイムアウト。 デフォルト: 30 |
max_connections |
整数 |
許可される同時接続の最大数。 この数に到達すると、新しい接続は引き続き受け入れられますが、別の接続が閉じられるまでその処理は遅延されます。 デフォルト: 100 |
heap_size |
整数 |
Java ヒープ(-Xmx Java オプション)に割り当てられた、メガバイト単位のメモリ。 0 に設定すると、この値は自動的に計算されます。 デフォルト: 0 |
perm_size |
整数 |
Java パーマネント オブジェクト(-XX: PermSize Java オプション)に割り当てられた、メガバイト単位のメモリ。 0 に設定すると、この値は自動的に計算されます。 デフォルト: 0 |
app_base |
文字列 |
ドキュメント、ワーク ファイルおよび一時ファイル用のルート ディレクトリ。 Tomcat の ${catalina.base} ディレクトリの一般的な構造はこのフォルダに作成され、すべての Java アプリケーションに共通のライブラリ、一時ファイルおよびワーク ファイルの temp および work、また ${catalina.base}/webapps の work_dir property - analogue で定義されるサブディレクトリで共有されます。 デフォルト: empty |
work_dir |
文字列 |
処理されるドキュメントが位置するディレクトリ。 自動展開を目的としても使用されます。 詳細情報は、Tomcat の Web サイト、Automatic Application Deployment から入手できます。 デフォルト: webapps |
timezone |
文字列 |
アプライアンスで使用されるタイムゾーンを指定します。 このプロパティが空の場合、タイムゾーンは変更されず、現状のものが使用されます。 サポートされているタイムゾーンのリストはここで参照できます。 デフォルト: empty |
プロパティ名 |
タイプ |
説明 |
logs_enabled |
文字列 |
ログ記録を完全に有効または無効にします。 デフォルト: no |
logs_base_dir |
文字列 |
ログ ファイルが格納されるディレクトリ。 デフォルト: 空。ログはマウントされた NAS ボリュームのルート内に置かれます。 |
error_log_filename |
文字列 |
エラー ログ用のファイル名プレフィックス。 デフォルト: catalina |
log_level |
文字列 |
ロギング レベル。 値は、冗長性の低い順に、SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST、ALL となります。 ログ レベルの詳細情報は Tomcat ドキュメントから入手できます。 既定値: INFO |
enable_access_log |
文字列 |
アクセス ログを有効または無効にします。 デフォルト: no |
access_log_filename |
文字列 |
アクセス ログ用のファイル名プレフィックス。 デフォルト: access.log |
TOMCAT アプライアンスは mon 端子を介して以下のカスタム カウンタをレポートします。 これらのカウンタは、TOMCAT カウンタ グループ(TOMCAT64 の場合は TOMCAT64)に属します。
カウンタ名 |
説明 |
Classes loaded |
ロードされたクラスの数 |
Classes loaded bytes |
ロードされたキロバイト数 |
Classes unloaded |
アンロードされたクラスの数 |
Classes unloaded bytes |
アンロードされたキロバイト数 |
Classes load/unload execution time |
クラスのロードおよびアンロード操作実行にかかった時間 |
Compiler compiled |
実行されたコンパイル タスクの数 |
Compiler failed |
失敗したコンパイル タスクの数 |
Compiler invalid |
無効にされたコンパイル タスクの数 |
Compiler execution time |
コンパイル タスクの実行に費やされた時間 |
Heap s0 space capacity |
現在のサバイバ スペース 0 の容量 |
Heap s1 space capacity |
現在のサバイバ スペース 1 の容量 |
Heap s0 space utilization |
サバイバ スペース 0 の使用率 |
Heap s1 space utilization |
サバイバ スペース 1 の使用率 |
Heap eden space capacity |
現在のエデン スペースの容量 |
Heap eden space utilization |
エデン スペースの使用率 |
Heap old space capacity |
現在の古いスペースの容量 |
Heap old space utilization |
古いスペースの使用率 |
Heap permanent space capacity |
現在の永続スペースの容量 |
Heap permanent space utilization |
永続スペースの使用率 |
Heap young generation GC events |
新しい世代の GC イベント(GC - Garbage Collection)数 |
Heap young generation GC time |
新しい世代のガベージ コレクション時間 |
Heap number of GC events |
Full の GC イベントの数 |
Heap full GC time |
Full のガベージ コレクション時間 |
Heap total GC time |
ガベージ コレクション時間の合計 |
Pool current new generation |
現在の新世代の容量 |
Pool min new generation |
新世代の最小容量 |
Pool max new generation |
新世代の最大容量 |
Pool current old generation |
現在の古い世代の容量 |
Pool min old generation |
古い世代の最小容量 |
Pool max old generation |
古い世代の最大容量 |
Pool current permanent generation |
現在の永続的世代の容量 |
Pool min permanent generation |
永続的世代の最小容量 |
Pool max permanent generation |
永続的世代の最大容量 |
New generation tenuring threshold |
殿堂入りしきい値 |
New generation max tenuring threshold |
最大殿堂入りしきい値 |
Desired survivor size |
推奨されるサバイバ サイズ |
Compiler tasks |
実行されたコンパイル タスクの数 |
アプライアンスの起動に失敗した場合、以下の内容のエラーがシステム ログに記録される場合があります。
エラー メッセージ |
説明 |
エラー: ログは有効ですが、log 端子は接続されていません。 |
log 端子は接続されていませんが、 logs_enabled または enable_access_log が yes に設定されています。 |
エラー: content_on_fs は「off」ですが、ローカルのコンテンツ ボリュームがありません。 |
content_on_fs は off に設定されます。このことは、データ ボリュームをローカルにマウントする必要があるが、TOMCAT はコンテンツ ボリュームをマウントできないことを示しています。 最も可能性の高い原因は、コンテンツ ボリュームがフォーマットされないか、TOMCAT プロパティ内に定義されていないことです。 |
エラー: nfs 共有のマウントに失敗しました。 |
TOMCAT が nfs 共有をマウントできません。 最も可能性が高い原因は、fs が接続されていないか、TOMCAT が NAS(または fs 端子へ接続される任意のアプライアンス)の前に開始されたことです。 |
メッセージ |
説明 |
データ ストレージのディスク空き容量が 5% 未満です。 |
fs 端子を介してアクセスされたデータ ボリュームのディスク空き容量が 5% 未満です。 ボリュームのサイズを拡張することをお勧めします。 |
データ ストレージのディスク空き容量が 1% 未満です。 |
fs 端子を介してアクセスされたデータ ボリュームのディスク空き容量が 1% 未満です。 すぐに対応する必要があります。データ損失が発生する可能性があります。 |
コンテンツ ボリュームのディスク空き容量が 5% 未満です。 |
アプライアンス上のコンテンツ ボリュームのディスク空き容量が5% 未満です。 ボリュームのサイズを拡張することをお勧めします。 |
コンテンツ ボリュームのディスク空き容量が 1% 未満です。 |
アプライアンス上のコンテンツ ボリュームのディスク空き容量が1% 未満です。 すぐに対応する必要があります。データ損失が発生する可能性があります。 |
ログ記録をオンにすると TOMCAT のパフォーマンスが低下する場合があります(logs_enabled を yes に設定してエラー ログ記録をオンにした場合、または enable_access_log を yes に設定してアクセス ログ記録をオンにした場合)。 以下の表は、Apache Web サーバのバージョン 2.0 および 2.2 に付随する Apache Benchmark ユーティリティでログが無効の場合に実行されるベンチマーク結果(rps、requests per second の単位で指定)を示しています。 Apache Benchmark の詳細は Apache の Web サイトを参照してください。 次の設定がベンチマークに使用されました。"bw 500M mem=2G cpu=2"。
一致 |
rps |
1 クライアント一致 |
2800~3200 rps |
10 クライアント一致 |
7500~7900 rps |
100 クライアント一致 |
7700-8100 rps |
シンプルな Java 対応 Web サイト
TOMCAT は、コンテンツ ボリュームからのアプリケーションを処理します。
使用中のアプライアンス:
プロパティ名 |
値 |
ノート |
hostname |
www.mysite.org |
サイトのホスト名。 |
app_base |
MyApp |
|
content_on_fs |
off |
TOMCAT は、すべてのコンテンツにユーザ ボリューム コンテンツを使用します。 |
timezone |
EST |
EST タイム ゾーン。 |
tomcat_port |
80 |
HTTP プロトコル用の標準的なポート。 |
クライアント リクエストは IN ゲートウェイ上に送られます。 ゲートウェイは TOMCAT サーバへリクエストを転送し、このサーバでリクエストが処理されます。
データベース、ログ、モニタリングを使用する 2 層アプリケーション
使用中のアプライアンス:
プロパティ設定の例:
プロパティ名 |
値 |
ノート |
hostname |
www.mysite.org |
サイトのホスト名。 |
app_base |
MyApp |
|
content_on_fs |
on |
TOMCAT はすべてのコンテンツに fs 端子を通じてリモート ストレージを使用します。 |
timezone |
EST |
EST タイム ゾーン |
tomcat_port |
80 |
HTTP プロトコル用の標準的なポート。 |
max_connections |
200 |
同時ユーザは最大 200 です。 |
logs_enabled |
yes |
エラー ログを有効にします。 |
logs_base_dir |
MyApp_Log_Dir |
|
log_level |
INFO |
|
error_log_filename |
error_log |
エラー ログ名です。 |
enable_access_log |
yes |
アクセス ログを有効にします。 |
access_log_filename |
myapp_access |
アクセス ログ名。 |
クライアント リクエストは IN ゲートウェイ上に送られます。 ゲートウェイは TOMCAT サーバへリクエストを転送し、このサーバでリクエストが処理されます。 コンテンツとログはストレージ アプライアンス上にあります。 カウンタは mon アプライアンスにレポートされます。
注: Java アプリケーションは、さまざまなタイプのデータベースを使用できます。 これはアプリケーション内に適切な JDBC ドライバがあるかどうかにのみ依存します。 TOMCAT では、どのデータベース アプライアンスでも db 端子へ接続することができます。
TOMCAT のフロントエンドとしての WEB5
以下の図は、アプリケーション サーバとしての TOMCAT アプライアンスと、フロントエンドとしての WEB5 の使用状況を示しています。 WEB5 は静的コンテンツを処理し、サーバ側での処理が必要なすべてのリクエストを AJP プロトコルを使用して TOMCAT へリダイレクトします。
注: このモードには、WEB5 内で(mod_proxy と mod_proxy_ajp を有効にして)AJP サポートを有効にすることが必要です。
使用中のアプライアンス:
プロパティ設定の例:
プロパティ名 |
値 |
ノート |
content_on_fs |
off |
TOMCAT は、すべてのコンテンツにユーザ ボリューム コンテンツを使用 |
timezone |
EST |
EST タイム ゾーン |
他の設定にはそれぞれデフォルト値があります。
フロントエンドとして動作し、かつ AJP プロトコルを使用して TOMCAT と通信するように正しく WEB5 を構成する必要があります。
mod_proxy および mod_proxy_ajp は、Apache の設定に以下の行を含めることで有効にする必要があります。
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
TOMCAT によって処理するためには、たとえば以下のような url スペースのパスを指定する必要があります。
ProxyPass /path-that-served-by-tomcat ajp://aux:8009/some-servlet ProxyPassReverse /path-that-served-by-tomcat ajp://aux:8009/some-servlet
例:
パス |
コンテンツ |
処理元 |
/index.html |
静的な html ドキュメント |
WEB5 によって処理 |
/images/* |
静的なグラフィカル ファイル |
WEB5 によって処理 |
/scripts/*.php |
php スクリプトによって生成された動的なコンテンツ |
WEB5 によって処理 |
/path-that-served-by-tomcat |
jsp によって生成された動的なコンテンツ |
TOMCAT によって処理 |
クライアント リクエストは IN ゲートウェイ上に送られます。 ゲートウェイはフロントエンド Web サーバへリクエストを転送します。このサーバは静的な HTML ページ、グラフィカル ファイルおよび php スクリプトのリクエストを処理します。 jsp ページまたはサーブレット ページのリクエストは AppServer へ転送され、AppServer によって処理されます。
拡張性のある Java 対応 Web サイト
使用中のアプライアンス:
AppServer1 と AppServer2 の両方に対するプロパティ設定の例:
プロパティ名 |
値 |
ノート |
content_on_fs |
off |
TOMCAT は、すべてのコンテンツにユーザ ボリューム コンテンツを使用 |
timezone |
EST |
EST タイム ゾーン |
他の設定にはそれぞれデフォルト値があります。
クライアント リクエストは IN ゲートウェイ上に送られます。 ゲートウェイは lb ロード バランサへリクエストを転送します。これは AppServer1 と AppServer2 のいずれかにリクエストを転送します。
アプライアンス内で使用されるオープン ソース/サードパーティ ソフトウェア
TOMCAT および TOMCAT64 では、それぞれにベース クラス LUX5 および LUX64 によって使用されるサードパーティのオープン ソース パッケージに加えて、以下のサードパーティ オープン ソース パッケージを使用します。
TOMCAT
ソフトウェア |
バージョン |
変更 |
ライセンス |
ノート |
Apache Tomcat |
5.5.28 |
はい |
Apache License v2.0 |
ホームページ |
JDK |
1.6.0.18 |
いいえ |
SunBCL |
Sun Web サイトで利用可能 |
samba-client |
3.0.28-0.el5.8 |
いいえ |
GPLv2 |
該当なし |
samba-common |
3.0.28-0.el5.8 |
いいえ |
GPLv2 |
該当なし |
TOMCAT64
ソフトウェア |
バージョン |
変更 |
ライセンス |
ノート |
Apache Tomcat |
5.5.28 |
はい |
Apache License v2.0 |
ホームページ |
JDK |
1.6.0.18 |
いいえ |
SunBCL |
Sun Web サイトで利用可能 |
samba-client |
3.0.28-1.el5_2.1 |
いいえ |
GPLv2 |
該当なし |
samba-common |
3.0.28-1.el5_2.1 |
いいえ |
GPLv2 |
該当なし |
Copyright © 2012 CA. All rights reserved. |
|