この記事では主に、PHP における高同時実行性と大量のトラフィックの問題を解決する方法を紹介します。一定の参考価値があります。今、みんなに共有します。困っている友達は参考にしてください。
基礎知識
## TFS: スループット (スループットとは、システムが単位時間あたりに処理するリクエストの数を指します)
RT: 応答時間 (リクエストが送信されてから応答までの時間)
同時ユーザー数: 同時にサイトにアクセスするユーザーの数期間内の時間
QPS: 1 秒あたりのクエリ レート (インターネット分野では、1 秒あたりのリクエストまたは応答、1 秒あたりの応答数 (HTTP リクエスト))
PV : ページビュー ページ訪問数
UV: ユーザービュー ユーザー訪問数
一般的には、日次pv (訪問数) が 1,000 万を超える場合、同時実行性が高いと計算できます。
毎日の Web サイトの帯域幅 = PV / 統計時間 (秒) * 平均ページ サイズ (KB) * 8
ストレス テスト
Apache 独自のストレス テスト ツール ab を使用することをお勧めします。
使用方法: Apache ディレクトリを入力し、現在のディレクトリで実行します (Windows):
ab.exe -n 总请求量 -c 并发请求量 http://请求地址
リクエストが完了すると、データ:
Server Software: Apache/2.4.18 服务器类型 Server Hostname: eko.xiao.com 域名 Server Port: 80 端口 Document Path: /index.html 请求文件 Document Length: 529 bytes 文件大小 Concurrency Level: 100 并发数 Time taken for tests: 1.240 seconds 总响应时间 Complete requests: 1000 请求数 Failed requests: 0 失败次数 Total transferred: 800000 bytes 总共传输数据量 HTML transferred: 529000 bytes Requests per second: 806.41 [#/sec] (mean) QPS(每秒查询率) Time per request: 124.007 [ms] (mean) 平均响应时间 Time per request: 1.240 [ms] (mean, across all concurrent requests) Transfer rate: 630.00 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 1 1.4 1 38 Processing: 42 114 34.2 103 204 Waiting: 41 113 33.9 102 204 Total: 43 115 34.5 104 207 Percentage of the requests served within a certain time (ms) 50% 104 66% 117 75% 133 80% 136 90% 173 95% 197 98% 204 99% 204 100% 207 (longest request)
最適化
QPS が増加するにつれて、各段階で異なる最適化手段が必要になります。最適化計画はハードウェアやネットワークの条件にも関係します。 QPS が 50 に達します 最適化は必要ありません QPS が 100 (データベース層) に達します 各データベース クエリが 0.01 秒で、各ページがSQL クエリが 1 つだけの場合、この時点でデータベースの制限に達します最適化対策: データベース キャッシュ、データベース ロード バランシング、redis、memcache#QPS が 800 (ネットワーク帯域幅) に達します
各ページが 10K しかないと仮定すると、800QPS では帯域幅が使い果たされてしまいます
# 最適化対策: CDN アクセラレーション ロード バランシング QPS が 1000# に達する 最適化対策:静的ページ
トラフィックの最適化:
リーチング対策処理
フロントエンドの最適化:
HTTP リクエストの削減
非同期リクエストの追加
ブラウザー キャッシュを有効にする
サーバーの最適化:
ページ静的
同時処理
キュー処理
データベースの最適化:
データベースキャッシュ
サブデータベースとテーブル、パーティション操作
以上がこの記事の全内容となりますので、皆様の学習のお役に立てれば幸いです。その他の関連コンテンツについては、PHP 中国語 Web サイトにご注目ください。
関連する推奨事項:
php Daniel が共有した: PHP コード記述仕様、包括的な概要以上がPHP での高い同時実行性と大量のトラフィックの問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。