ホームページ > 記事 > システムチュートリアル > Tomcat のパフォーマンスを最適化するための N 個の方法を分析する
Tomcat は多くの場合、JavaWeb 実践者にとってデフォルトの開発環境ですが、実稼働環境としての Tomcat のデフォルト構成、特にメモリとスレッドの構成は、デフォルトでは非常に低く、簡単にパフォーマンスのボトルネックになる可能性があります。まだまだ多くの機能がありますが、改善の余地があります。以下では、メモリ、スレッド、IO に分けて Tomcat の最適化を紹介します。
Tomcat は JavaWeb 実務者にとってデフォルトの開発環境であることがよくありますが、運用環境としての Tomcat のデフォルト構成、特にメモリとスレッドの構成は、デフォルトでは非常に低く、簡単にパフォーマンスのボトルネックになる可能性があります。
幸いなことに、Tomcat にはまだ改善の余地がたくさんあります。以下では、メモリ、スレッド、IO に分けて Tomcat の最適化を紹介します。
1: Tomcat のメモリ最適化。起動時に大きなメモリが必要であることを JVM に伝えます (メモリの調整が最も直接的な方法です)
リーリー
-XmsJVM 初期化ヒープ サイズ
-Xmx
2: 次のようなserver.xmlでのTomcatスレッドの最適化:
maxSpareThreads="X" は、最大 X 個のスレッドが存在できる場合、X を超えると、不要になったスレッドが閉じられることを意味します
acceptCount="X" 同時に接続する人の数が maxThreads に達してもキューに入れることができます。X を超えると処理されません。
3: Tomcat IO の最適化
1: 同期ブロッキング IO (JAVA BIO) 同期とブロッキング、サーバー実装モードは 1 接続 1 スレッドです (考えると恐ろしいです。スレッドは非常に貴重なリソースです)。もちろん、スレッド プール メカニズムを通じて改善できます。
BIO 方式は、接続数が比較的少なく固定されているアーキテクチャに適しています。この方式はサーバー リソースの要件が比較的高く、同時実行性はアプリケーションに限定されています。ただし、プログラムは直感的です。 、シンプルでわかりやすい
NIO 方式は、チャット サーバーなど、接続数が多く、接続が比較的短いアーキテクチャに適しており、プログラミングが複雑です。
AIO メソッドは、フォト アルバム サーバーなど、接続数が多く比較的長い接続 (重い操作) を行うアーキテクチャで使用されます。プログラミングは比較的複雑で、JDK7 は、OS を完全に呼び出します。応援してね
server.xml内
TomcatのIO切り替えを実現
4: ビッグキラー APR リーリーAPR (Apache Portable Runtime) は、Apache HTTP Server 2.x の中核となる移植性の高いライブラリであり、他のローカル Web テクノロジーとより適切に統合でき、一般に、高性能 Web サーバー プラットフォームとして Java をより効率的にします。単に背景コンテナとして機能するのではなく。
Apache Tomcat Native Library をインストールし、直接起動する場合は apr (http://tomcat.apache.org/native-doc/) をサポートします。具体的なインストール方法については、他のブログや記事を参照してください。コードの問題のトラブルシューティングと Tomcat の最適化 このレベルでは、パフォーマンスのほとんどのニーズを満たすことができます。
リーリー以上がTomcat のパフォーマンスを最適化するための N 個の方法を分析するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。