ホームページ >バックエンド開発 >PHPの問題 >TPS、QPS、同時実行数、応答時間の詳細な説明

TPS、QPS、同時実行数、応答時間の詳細な説明

Guanhui
Guanhui転載
2020-07-18 17:54:534560ブラウズ

TPS、QPS、同時実行数、応答時間の詳細な説明

#QPS

原則: 訪問の 80% は毎日時間の 20% に集中します。この 20% の時間はピーク時間と呼ばれます。

式: (合計 PV * 80%) / (1 日あたりの秒数 * 20%) = ピーク時の 1 秒あたりのリクエスト数 (QPS)。

マシン: 1 秒あたりのピーク時間 QPS / 単一マシンの QPS = 必要なマシン。

単一マシンで 1 日あたり 300w PV ですが、このマシンにはどのくらいの QPS が必要ですか?

(3000000 * 0.8) / (86400 * 0.2) = 139 (QPS)。

通常、これはピーク値であるため、139QPS に達する必要があります。

#QPS1 秒あたりのクエリ レート QPS は、特定のクエリ サーバーが指定された期間内に処理するトラフィックの量の尺度です。

1 秒あたりのクエリ レート

インターネットでは、ドメイン ネーム システム サーバー マシン (QPS) のパフォーマンスを測定するために、1 秒あたりのクエリ レートがよく使用されます。

フェッチ/秒に対応します。これは、1 秒あたりの応答リクエストの数であり、最大スループット容量です。

コンピュータ言語コンピュータ プログラミング言語。データ分析やレポート出力に使用されます。動作プラットフォームはMRDCLです。サポートされるデータ ファイルには、ASC 形式と CSI 形式が含まれます。

CSIフォーマットはQPS独自のデータフォーマットです。これは、データ分析、データクリーニング、レポート出力に使用される非常に専門的な言語であり、現在市場調査業界で最も広く使用されています。中国国内での出願は比較的少ない。

開発理由には、スループット (TPS)、QPS、同時実行数、応答時間 (RT) の概念を理解する必要があるため、Baidu 百科事典から確認し、次のように記録します。

1. 応答時間 (RT)

応答時間とは、システムがリクエストに応答するまでにかかる時間を指します。直感的には、この指標は、コンピューター システム全体がリクエストを処理するのにかかる時間を完全に記録するため、ソフトウェアのパフォーマンスに関する人々の主観的な感情と非常に一致しています。通常、システムは多くの機能を提供しており、機能ごとに処理ロジックも大きく異なるため、機能ごとの応答時間も異なり、さらに入力データが異なると同じ機能の応答時間も異なります。したがって、システムの応答時間について議論するときは、通常、システムのすべての機能の平均時間、またはすべての機能の最大応答時間を指します。もちろん、多くの場合、各機能または機能グループの平均応答時間と最大応答時間について議論する必要があります。

同時操作のない単一マシンのアプリケーション システムでは、応答時間が合理的で正確なパフォーマンス指標であると一般に考えられています。応答時間の絶対値はソフトウェアのパフォーマンスを直接反映するものではなく、実際にはソフトウェアのパフォーマンスはユーザーが応答時間を受け入れるかどうかに依存することに注意してください。ゲーム ソフトウェアの場合、応答時間は 100 ミリ秒未満であれば問題なく、1 秒程度であればギリギリ許容範囲ですが、3 秒を超えるとまったく許容できません。コンパイル システムの場合、大規模なソフトウェアのソース コードを完全にコンパイルするには数十分、またはそれ以上かかる場合がありますが、この程度の応答時間はユーザーにとって許容範囲です。

2. スループット (Throughput)

スループットとは、単位時間あたりにシステムによって処理されるリクエストの数を指します。同時実行性のないアプリケーション システムの場合、スループットは応答時間に厳密に反比例し、実際、スループットは応答時間の逆数になります。前述したように、シングルユーザー システムの場合、応答時間 (またはシステムの応答時間とアプリケーションの遅延時間) はシステム パフォーマンスの適切な尺度になりますが、同時システムの場合は、通常、スループットがパフォーマンスの指標として使用されます。

マルチユーザー システムの場合、システムを使用しているユーザーが 1 人だけの場合、平均応答時間は t ですが、n 人のユーザーが使用している場合、各ユーザーが見た応答時間は通常 n 倍ではありません。 t. であり、多くの場合、n×t よりもはるかに小さくなります (もちろん、特殊な場合には、n×t よりも大きくなる場合や、さらに大きくなる場合もあります)。これは、各リクエストの処理に多くのリソースが必要となるためですが、各リクエストの処理には同時実行が難しいステップが多く、特定の時点では占有されるリソースがそれほど多くないことがよくあります。つまり、単一のリクエストを処理する場合、各時点で多くのリソースがアイドル状態になる可能性がありますが、複数のリクエストを処理する場合、リソースが適切に構成されていれば、各ユーザーが見た平均応答時間はユーザー数に応じて増加しません。直線的に増加します。実際、ユーザー数が増加するにつれて、さまざまなシステムの平均応答時間は異なる速度で増加します。これが、同時システムのパフォーマンスを測定するためにスループットを使用する主な理由でもあります。一般に、スループットは比較的一般的な指標であり、ユーザー数やユーザーの利用形態が異なる 2 つのシステムの最大スループットがほぼ同じであれば、2 つのシステムの処理能力はほぼ同じであると判断できます。

3. 同時ユーザー数


同時ユーザーの数は、システムが同時にホストし、システム機能を通常どおりに使用できるユーザーの数を指します。スループットと比較すると、同時ユーザー数はより直感的ですが、より一般的なパフォーマンス指標でもあります。実際、同時ユーザー数は非常に不正確な指標です。ユーザーの使用パターンが異なると、ユーザーが単位時間あたりに発行するリクエストの数も異なるためです。ウェブサイトシステムを例にとると、ユーザーは登録しないと利用できないことが想定されていますが、登録ユーザーは常にウェブサイトを利用するわけではないため、特定の瞬間にオンラインになれるのは一部の登録ユーザーだけです。 Web サイトの閲覧に多くの時間を要し、Web サイト上の情報を読み取るのに時間がかかるため、特定の時間に同時にシステムにリクエストを送信するのは一部のオンライン ユーザーのみです。このようにして、Web サイト システムのユーザー数に関する 3 つの統計 (登録ユーザー数、オンライン ユーザー数、同時リクエストを行うユーザー数) が得られます。登録ユーザーは長期間Webサイトにログインしない可能性があるため、登録ユーザー数を業績指標として使用すると誤差が大きくなります。オンライン ユーザーの数と同僚からリクエストを送信するユーザーの数は両方ともパフォーマンス指標として使用できます。これと比較すると、オンライン ユーザーをパフォーマンス指標として使用する方が直感的であり、同時要求ユーザー数をパフォーマンス指標として使用する方がより正確です。

4. 1 秒あたりの QPS クエリ レート (Query Per Second)

1 秒あたりのクエリ レート QPS は、指定された時間内に特定のクエリ サーバーが処理するトラフィックの量です。インターネットでは、ドメイン ネーム システム サーバーとして機能するマシンのパフォーマンスは、1 秒あたりのクエリ レートによって測定されることがよくあります。フェッチ/秒に相当します。これは、1 秒あたりの応答リクエストの数であり、最大スループット能力です。 (TPS に似ているようですが、特定のシナリオのスループットに適用されます)

推奨チュートリアル: "PHP"

以上がTPS、QPS、同時実行数、応答時間の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjb51.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。