目次
1.1 高同時実行性の概念
2.1 垂直方向の拡張" >2 システムの同時実行機能の向上2.1 垂直方向の拡張
スタンドアロン処理能力の向上
ホームページ 運用・保守 Linuxの運用と保守 Linux の高い同時実行性とは何を意味しますか?

Linux の高い同時実行性とは何を意味しますか?

Nov 11, 2022 pm 03:25 PM
linux

Linux における高同時実行性とは、システム運用中に遭遇する「短時間に大量の操作リクエストに遭遇する」状況のことで、主に Web システムから大量のリクエストへのアクセスが集中した場合に発生します。大量のリクエストを受信する; この状況が発生すると、この期間中にシステムはリソースのリクエスト、データベース操作などの大量の操作を実行することになります。

Linux の高い同時実行性とは何を意味しますか?

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

高同時実行性の概念

1.1 高同時実行性の概念

高同時性これは、次の 1 つです。インターネット分散システム アーキテクチャの設計で考慮する必要がある要素。通常、システムが設計を通じて多くのリクエストを同時に並行して処理できるようにすることを指します。 高同時実行性(High Concurrency)とは、システム運用時に「短時間に大量の操作要求が発生する」状況のことで、主にWebシステムに大量の処理が集中した場合に発生します。アクセス数やリクエスト数が多い(例:チケット取得状況12306件、天猫ダブルイレブンイベント)。この状況が発生すると、システムはこの期間中にリソースの要求、データベース操作などの多数の操作を実行することになります。

1.2 高同時実行性関連の指標

応答時間 (応答時間)
  • システムはリクエストに応答します時間。たとえば、システムが HTTP リクエストを処理するのに 200 ミリ秒かかります。この 200 ミリ秒がシステムの応答時間です。
    スループット(スループット)
  • 単位時間あたりに処理されるリクエスト
    1 秒あたりのクエリ率 QPS (Query Per Second)
  • 1 秒あたりの応答リクエストの数。インターネット分野では、この指標とスループットの区別はそれほど明確ではありません。
    同時接続ユーザー数 (User Concurrence)
  • 通常の通信を同時に実行するユーザーの数。システム機能の使用。たとえば、インスタント メッセージング システムでは、同時オンライン ユーザーの数は、システムの同時ユーザーの数をある程度表します。

#1.3 高度な同時実行性の最適化

    単一プロセスでオープンできるファイルの最大数の制限
  • カーネル TCP パラメータ
  • #IO イベント割り当てメカニズム

2 システムの同時実行機能の向上2.1 垂直方向の拡張

スタンドアロン処理能力の向上

  • スタンドアロン ハードウェアのパフォーマンスを向上します。たとえば、CPU コアの数を増やします。 32 コアなど、より優れたネットワーク カード (10G など) へのアップグレード、SSD などのより優れたハード ドライブへのアップグレード、2T などのハード ディスク容量の拡張、128G
    • などのシステム メモリの拡張

      # 単一マシン アーキテクチャのパフォーマンスを向上させるには、たとえば、キャッシュを使用して IO 回数を削減し、非同期を使用して単一サービスのスループットを向上させ、ロックフリーのデータ構造を使用して応答時間を短縮します

2.2 水平方向の拡張

サーバーの台数を追加すると、システムのパフォーマンスを直線的に拡張できます

  • #2.3 一般的なインターネット層アーキテクチャ

(1) クライアント層: 一般的な通話相手はブラウザまたはモバイル アプリケーション APP(2) リバースプロキシ層: システム入口、リバースプロキシ

(3) サイトアプリケーション層: コアアプリケーションロジックの実装、html または json を返す

(4) サービス層: サービス化の場合

#(5) データ キャッシュ レイヤー: キャッシュによりストレージへのアクセスが高速化されます

(6 ) データ データベース レイヤー: データベースの固定化されたデータ ストレージ

2.4 水平拡張アーキテクチャ

リバース プロキシ層のレベル拡張機能

    いつnginx がボトルネックになる場合は、サーバーの数を増やし、新しい nginx サービスをデプロイし、外部ネットワーク IP を追加するだけで、リバース プロキシ レイヤーのパフォーマンスを拡張できます。理論的には無限に高い同時実行性
  • # は「DNS ポーリング」によって実現されます。 dns-server はドメイン名の複数の解決 IP で構成されており、各 DNS 解決リクエストは dns-server にアクセスします。これらの IP はポーリングされて返されます
  • サイト層の水平展開
  • は「nginx」によって実装されます。 nginx.conf を変更することで、複数の Web バックエンドをセットアップできます
  • #Web バックエンドがボトルネックになった場合は、サーバーの数を増やし、nginx 構成に新しい Web サービス デプロイメントを追加するだけです。新しい Web バックエンドを構成すると、サイト層のパフォーマンスが拡張され、理論上無限に高い同時実行性を実現できます

    • サービス層の水平方向の拡張
    • 「サービス接続プール」を通じて実現
  • #サイト層が RPC クライアント経由で下流のサービス層 RPC サーバーを呼び出すと、接続プールは複数の接続を確立します。ダウンストリーム サービス。サービスがボトルネックになった場合は、サーバーの数を増やし、新しいサービスをデプロイし、RPC クライアントで新しいダウンストリーム サービス接続を確立するだけで、サービス層のパフォーマンスが拡張され、理論上の結果が得られます。

    # での無制限の高同時実行性

    • ## データ層の水平方向の拡張

    • #データ層 (キャッシュ、データベース) にはデータが関与します。 水平方向の拡張により、データ (キャッシュ) が水平方向に分割されます。 、データベース)は、システムのパフォーマンスを拡張するという目的を達成するために、もともと 1 つのサーバーに保存されていたものを別のサーバーに保存します。

    • 特定の範囲のデータを保存します

      • user0 ライブラリ、uid 範囲 1-1kw

      • user1 ライブラリを保存します、ストレージ uid 範囲 1kw-2kw

    • ハッシュに従って水平に分割

      • user0 ライブラリ、均等な uid データを保存

      • #user1 ライブラリ、奇数の uid データを保存します

3 台の単一 Linux サーバーで同時実行性が向上

3.1 iptables 関連

##iptables ファイアウォールを閉じて、カーネルが iptables モジュールをロードしないようにします
  • 単一プロセスでオープンできるファイルの最大数の制限 (単一プロセスでオープンできるファイルのデフォルトの最大数は 1024 です)
ulimit –n 65535
ログイン後にコピー
  • Linux システムでユーザーが開いているファイルの数を変更するソフトウェア 制限とハードリミット
  • vim /etc/security/limits.conf
    * soft nofile 65535   #'*'表示修改所有用户的限制
    * hard nofile 65535
    ログイン後にコピー
    #用户完成系统登录后读取/etc/security/limits.conf文件
    vim /etc/pam.d/login
    sessionrequired /lib/security/pam_limits.so
    ログイン後にコピー
  • 3.2 カーネル TCP パラメータ TIME_WAIT ステータス

      TCP 接続が切断された後、ポートが解放されるまで一定時間 TIME_WAIT 状態が維持されます。同時リクエストが多すぎると、TIME_WAIT状態のコネクションが大量に生成され、切断が間に合わないとポートリソースやサーバーリソースが大量に占有されてしまいます。
    #查看TIME_WAIT状态连接
    netstat -n | grep tcp | grep TIME_WAIT |wc -l
    ログイン後にコピー
    # vim /etc/sysctl.conf
    net.ipv4.tcp_syncookies= 1 #表示开启SYNCookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
    net.ipv4.tcp_tw_reuse= 1 #表示开启重用。允许将TIME-WAITsockets重新用于新的TCP连接,默认为0,表示关闭;
    net.ipv4.tcp_tw_recycle= 1 #表示开启TCP连接中TIME-WAITsockets的快速回收,默认为0,表示关闭;
    net.ipv4.tcp_fin_timeout= 30  #修改系統默认的TIMEOUT 时间。
    ログイン後にコピー
  • 関連する推奨事項: "

    Linux ビデオ チュートリアル

    >>
  • 以上がLinux の高い同時実行性とは何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード写真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    写真から衣服を削除するオンライン AI ツール。

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    AI Hentai Generator

    AI Hentai Generator

    AIヘンタイを無料で生成します。

    ホットツール

    メモ帳++7.3.1

    メモ帳++7.3.1

    使いやすく無料のコードエディター

    SublimeText3 中国語版

    SublimeText3 中国語版

    中国語版、とても使いやすい

    ゼンドスタジオ 13.0.1

    ゼンドスタジオ 13.0.1

    強力な PHP 統合開発環境

    ドリームウィーバー CS6

    ドリームウィーバー CS6

    ビジュアル Web 開発ツール

    SublimeText3 Mac版

    SublimeText3 Mac版

    神レベルのコード編集ソフト(SublimeText3)

    Deepseek Webバージョンの入り口Deepseek公式ウェブサイトの入り口 Deepseek Webバージョンの入り口Deepseek公式ウェブサイトの入り口 Feb 19, 2025 pm 04:54 PM

    DeepSeekは、Webバージョンと公式Webサイトの2つのアクセス方法を提供する強力なインテリジェント検索および分析ツールです。 Webバージョンは便利で効率的であり、公式ウェブサイトは包括的な製品情報、ダウンロードリソース、サポートサービスを提供できます。個人であろうと企業ユーザーであろうと、DeepSeekを通じて大規模なデータを簡単に取得および分析して、仕事の効率を向上させ、意思決定を支援し、イノベーションを促進することができます。

    DeepSeekをインストールする方法 DeepSeekをインストールする方法 Feb 19, 2025 pm 05:48 PM

    DeepSeekをインストールするには、Dockerコンテナ(最も便利な場合は、互換性について心配する必要はありません)を使用して、事前コンパイルパッケージ(Windowsユーザー向け)を使用してソースからコンパイル(経験豊富な開発者向け)を含む多くの方法があります。公式文書は慎重に文書化され、不必要なトラブルを避けるために完全に準備します。

    Bitget公式ウェブサイトのインストール(2025初心者ガイド) Bitget公式ウェブサイトのインストール(2025初心者ガイド) Feb 21, 2025 pm 08:42 PM

    Bitgetは、スポット取引、契約取引、デリバティブなど、さまざまな取引サービスを提供する暗号通貨交換です。 2018年に設立されたこのExchangeは、シンガポールに本社を置き、安全で信頼性の高い取引プラットフォームをユーザーに提供することに取り組んでいます。 Bitgetは、BTC/USDT、ETH/USDT、XRP/USDTなど、さまざまな取引ペアを提供しています。さらに、この取引所はセキュリティと流動性について評判があり、プレミアム注文タイプ、レバレッジド取引、24時間年中無休のカスタマーサポートなど、さまざまな機能を提供します。

    OUYI OKXインストールパッケージが直接含まれています OUYI OKXインストールパッケージが直接含まれています Feb 21, 2025 pm 08:00 PM

    世界をリードするデジタル資産交換であるOuyi Okxは、安全で便利な取引体験を提供するために、公式のインストールパッケージを開始しました。 OUYIのOKXインストールパッケージは、ブラウザに直接インストールでき、ユーザー向けの安定した効率的な取引プラットフォームを作成できます。インストールプロセスは、簡単で理解しやすいです。

    gate.ioインストールパッケージを無料で入手してください gate.ioインストールパッケージを無料で入手してください Feb 21, 2025 pm 08:21 PM

    Gate.ioは、インストールパッケージをダウンロードしてデバイスにインストールすることで使用できる人気のある暗号通貨交換です。インストールパッケージを取得する手順は次のとおりです。Gate.ioの公式Webサイトにアクセスし、「ダウンロード」をクリックし、対応するオペレーティングシステム(Windows、Mac、またはLinux)を選択し、インストールパッケージをコンピューターにダウンロードします。スムーズなインストールを確保するために、インストール中に一時的にウイルス対策ソフトウェアまたはファイアウォールを一時的に無効にすることをお勧めします。完了後、ユーザーはGATE.IOアカウントを作成して使用を開始する必要があります。

    OUYI Exchangeダウンロード公式ポータル OUYI Exchangeダウンロード公式ポータル Feb 21, 2025 pm 07:51 PM

    OKXとしても知られるOUYIは、世界をリードする暗号通貨取引プラットフォームです。この記事では、OUYIの公式インストールパッケージのダウンロードポータルを提供します。これにより、ユーザーはさまざまなデバイスにOUYIクライアントをインストールすることが容易になります。このインストールパッケージは、Windows、Mac、Android、およびiOSシステムをサポートします。インストールが完了した後、ユーザーはOUYIアカウントに登録またはログインし、暗号通貨の取引を開始し、プラットフォームが提供するその他のサービスを楽しむことができます。

    gate.io公式ウェブサイト登録インストールパッケージリンク gate.io公式ウェブサイト登録インストールパッケージリンク Feb 21, 2025 pm 08:15 PM

    Gate.ioは、広範なトークン選択、低い取引手数料、ユーザーフレンドリーなインターフェイスで知られる高く評価されている暗号通貨取引プラットフォームです。高度なセキュリティ機能と優れたカスタマーサービスにより、Gate.ioは、信頼できる便利な暗号通貨取引環境をトレーダーに提供します。 gate.ioに参加する場合は、リンクをクリックして公式登録インストールパッケージをダウンロードして、暗号通貨取引の旅を開始してください。

    ubuntuにnginxでphpmyadminをインストールする方法は? ubuntuにnginxでphpmyadminをインストールする方法は? Feb 07, 2025 am 11:12 AM

    このチュートリアルは、既存のApacheサーバーに沿って、潜在的にubuntuシステムにnginxとphpmyAdminをインストールおよび構成することをガイドします。 Nginxのセットアップをカバーし、Apacheとの潜在的なポートの競合を解決し、Mariadbをインストールします(

    See all articles