デプロイされるプロジェクトが増えるにつれて、Tomcat にデプロイされるリリース パッケージも増えていきます。このように、多くの同一の jar がロードされ、大量の永続ストレージ領域のメモリを占有することは避けられません。共有ライブラリを設定すると、同一の jar が 1 つだけロードされます。 これには次の利点があります。 1. 永続ストレージ領域のメモリ使用量を減らすために、異なるプロジェクトで同じjarをロードしないようにします。 2. 重複するjarファイルの読み込みが少なくなるため、Tomcatの起動速度が向上します。 1. 共有ライブラリの設定方法方法1:conf ファイルの下にある catalina.properties ファイルを変更し、shared.loader のパスを設定します。 絶対パスを設定します。 shared.loader="D:hs/develop/shared/lib","D:/hs/develop/shared/lib/*.jar" その後、同じ jar を指定されたフォルダーの下に配置します。 または相対パスを設定します: shared.loader="${catalina.base}/shared/lib","${catalina.base}/shared/lib/*.jar" 次に、confと同じディレクトリに新しい共有ディレクトリを作成し、同じjarをlibに配置します。 方法2:conf ファイルの下にある catalina.properties ファイルを変更し、common.loader のパスを設定し、共有ライブラリのパスを追加します。 common.loader="${catalina.base}/lib","${catalina.base}/lib/*.jar","${catalina.home}/lib","${catalina.home}/lib/*.jar","${catalina.home}/lib/shared/*.jar" 次に、libフォルダに共有ディレクトリを作成し、同じjarを共有ディレクトリに配置します。 2. catalina.home と catalina.base の違いtomcat では、catalina.home と catalina.base は同じ場所を指しており、これは bin やその他のディレクトリの親ディレクトリです。 複数の Tomcat インスタンスをインストールしたいが、複数のソフトウェア バックアップをインストールしたくない場合は、これらの 2 つのプロパティを使用できます。tomcat ディレクトリでは、bin ディレクトリと lib ディレクトリのみが複数の tomcat インスタンスによって共有されます。conf、logs、temp、webapps、work などの他のディレクトリは、各 Tomcat インスタンスの独立したバックアップです。 現時点では、それらは異なる場所を指しています。 3. Tomcat6クラスローディングメカニズム
$CATALINA_HOME/common ディレクトリ内のすべてのクラスと jar パッケージをロードします。詳細な構成については、$CATALINA_HOME/conf/catalina.properties ファイルの common.loader 構成を参照してください。このクラスローダーによってロードされたクラスは、サーバー クラス ローダーと Webapp クラス ローダーから参照できます。Commonclass ローダーは Tomcat の起動時に作成され、その親クラスローダーは System クラス ローダーです。 Tomcat のコア クラス、$CATALINE_HOME/server ディレクトリ内のすべてのクラスと jar をロードする役割を担います。これは catalina.propreties の server.loader 構成で指定できます。Tomcat の起動時に作成され、その親ローダーは Commonclass ローダーです。 webapp の共通クラスをロードする役割を担います。これは、catalina.properties ファイルの shared.loader プロパティを通じてユーザーが指定できます。Tomcat の起動時に作成され、その親ローダーも共通クラス ローダーです。 これは、各アプリの WEB-INF/classes および WEB-INF/lib の下のクラスをロードする役割のみを果たします。親ローダーは共有クラス ローダーですが、ロード戦略はデフォルトのクラス ロード メカニズムとは異なります。 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
私はApacheを使ったことがありません。仕事を始めてからはずっとnginxを使っていました(運用保...
目次1. Bootstrap グリッドレイアウト2. 垂直方向の配置2.1 行タグの垂直方向の配置を...
この記事の例では、Vueスライダー検証の実装を共有しています。コードは次のとおりです。 <テン...
この質問は、Nuggets のメッセージから生まれました。友人が、次のコードの高さ遷移アニメーション...
JavaScriptは画像を表示したり非表示にしたりしますが、参考までに具体的な内容は次のとおりで...
Web デザイナーとして豊富な CSS 経験を持つ私たちは、あらゆる種類のコード構文、互換性、スニペ...
wgetコマンドを使用して、親ディレクトリの下のサブディレクトリ全体をダウンロードします。親ディレク...
MySQL 組み込みの日付関数 TIMESTAMPDIFF は、2 つの日付間の秒数、分数、時間数、...
概要最近MySQL関連の知識を勉強し始めました。学んだ知識ポイントと自分の理解を元に整理して共有しま...
bgcolor="テキストの色" background="背景画像&q...
シンプルなセカンダリメニューを動的に実装するマウスを第 1 レベルのラベル上に置くと、マウスが小さな...
目次VMware バープスイート1. 仮想マシンイメージとVMwareのインストールと使用2. 仮想...
1. コマンドの紹介tac (cat の逆順) コマンドは、ファイルの内容を行単位で逆順に出力します...
最近では、モバイルデバイスがますます普及しており、ユーザーがスマートフォンやタブレットを使用して W...
新しく作成された Web サイトの場合は、ASP.NET MVC5 を例に挙げます。セッションを処理...