Tomcat+Mysql の高同時実行構成の最適化の説明

Tomcat+Mysql の高同時実行構成の最適化の説明

1.Tomcatの最適化構成

(1)Tomcatのcatalina.batを変更する

Javaをサーバーモードに変更し、jvmのメモリを増やし、

setJAVA_OPTS=-server -Xms1024m -Xmx2048m -Xss512K -XX:PermSize=128m -XX:MaxPermSize=256m
setCATALINA_OPTS=-server -Xms512m -Xmx512m

以下のように表示されます。

Xms: 初期メモリ

Xmx: 最大メモリ

(2)TomcatのServer.xmlを変更する

<Servicename="Catalina"> に次の構成を追加します (テスト済み、10 秒以内に 2000 件の同時接続は問題ありません)。

<Executorname="tomcatThreadPool" namePrefix="catalina-exec-"
最大スレッド数="800" 最小スペアスレッド数="25" 最大アイドル時間="60000"/>
<コネクタエグゼキュータ="tomcatスレッドプール"
ポート="80"、プロトコル="HTTP/1.1"
接続タイムアウト = "60000"
キープアライブタイムアウト="15"
最大キープアライブリクエスト数 = "200"         
           アップロードタイムアウトを無効にする="false"
           enableLookups="false"
リダイレクトポート="8443"/>

maxThreads の数値を大きくしすぎると、次のエラーが発生しやすくなるので注意してください。

2. MySQL設定を最適化する

(1) MySqlのmy.ini (Windows)またはmy.cnf (Linux)を変更する

max_connections=12000 //接続の最大数は通常0〜15000の間ですが、15000を超えないようにしてください。
max_user_connections=0 // ユーザー接続の最大数。0 は制限なしを意味します。 interactive_timeout=31536000 // タイムアウト。接続プールで次のエラーを回避するために 1 年に設定します。 wait_timeout=31536000 

query_cache_size=512m //クエリキャッシュ。次のエラーを回避するには、この値を大きく設定してください。 

キーバッファサイズ=1024m
クエリキャッシュタイプ = 1
最大許容パケット=600m

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • MySQL シリーズ 10 同時実行制御を実装するための MySQL トランザクション分離
  • MySQL マルチバージョン同時実行制御メカニズム (MVCC) ソースコードの詳細な説明
  • MySQLのMVCCマルチバージョン同時実行制御の実装
  • 一意の注文番号を生成するためのMySQLの高同時実行方法
  • MySQL ロック制御同時実行方法
  • MySQL トランザクション同時実行問題の解決
  • MySQL データベースにおける高同時実行性の問題を解決する方法
  • MySQL 同時実行制御の原則に関する知識ポイント
  • MySQL マルチバージョン同時実行制御 MVCC の実装
  • MySQLデータの同時更新を処理する方法
  • MySQL はどのようにしてマルチバージョンの同時実行性を実現するのでしょうか?

<<:  Vue3+TypeScriptはaxiosをカプセル化し、リクエスト呼び出しを実装します

>>:  MySQL への接続時に発生する 1449 および 1045 例外の解決方法

推薦する

Vue ユニットテストに推奨されるプラグインと使用例

目次フレーム最高レベルのエラー報告活発なコミュニティとチーム冗談モカ推奨プラグインVue テストライ...

MySQL で数千万のテストデータを含むテストデータベースを作成する方法

場合によっては、MySQL が公式に提供しているテスト ライブラリに基づいてテスト データを作成し、...

vue3 を使用してカウント関数コンポーネントのカプセル化例を実装する

目次序文1. カプセル化の重要性2. どのようにカプセル化しますか? 1. アイデア2. 準備2. ...

Docker-compose インストール db2 データベース操作

db2 データベースをホストマシンに直接インストールするのは面倒で、ユーザーや権限を巻き込むのも不便...

純粋な CSS3 で実装された三目並べゲーム

操作効果: html <div class="三目並べ"> <...

ウェブページの背景色を制御する CSS コード

誰もが自分の Web ページの背景にふさわしい画像を見つけることに悩むことが多いと思います。これは事...

Linux yum パッケージ管理方法

導入yum (Yellow dog Updater, Modified) は、Fedora、RedH...

HTML ページ ソース コード レイアウトの概要_Powernode Java Academy

HTML ページ ソース コード レイアウトの概要この紹介では、Google のホームページのソー...

Vueのレスポンシブシステムの原理の詳細な説明

目次Vueのレスポンシブシステムの基本原則1. Object.definePropertyの使い方を...

Windows10 mysql 8.0.12 非インストール版 設定 起動方法

この記事では、MySQL 8.0.12のインストールされていないバージョンを設定して起動するための具...

HTML5+CSS3コーディング標準

黄金律プロジェクトに何人の人が取り組んでいるかに関係なく、すべてのコード行が同じ人によって書かれたよ...

CSS3 で less のテキストの長い影を実装する

この記事では主に、CSS3 LESS で長いテキストの影を実装する方法を紹介し、皆さんと共有します。...

MySQLの自己接続と結合の詳細な理解

1. MySQL 自己接続MySQL では、情報を照会するときに自分自身に接続 (自己接続) する必...

マークアップ言語 - Web アプリケーション CSS スタイル

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

MySQL 8.0.18はデータベースにユーザーを追加し、権限を付与します

1. データベースにログインするには、rootユーザーを使用することをお勧めします。 mysql -...