1

ウェブサイト用のウェブサーバー (gentoo linux、nginx、php-fpm、php) を準備しています。構成中に、fpm config の pm.max_children 値に到達しました。デフォルトは 50 です。PHP でいくつかの大きなファイルを提供する場合、各クライアントはダウンロード中にスレッド全体をブロックしますか? ウェブサイトを開こうとしている/ダウンロードを開始しようとしている 51 番目のクライアントはどうなりますか?

私が読んだことによると、1人の子= 1つのスレッドです。サーバーを 32GB ddr3 のクアッド コアの最新シリーズの xeon CPU で実行した場合、CPU/システムはいくつのクライアントまたはスレッドを生き残ることができますか?

Linux で開いているソケット/スレッド/プロセスの最大数に制限はありますか? OSはgentoo amd64(新規インストール)、nginx 1.4.0、php-5.4

ご協力いただきありがとうございます。

4

1 に答える 1

1

ファイルをphp経由でストリーミングする場合、はい、各ダウンロードはphpプロセスになります。これが、そうするのが悪い考えである理由でもあります。PHP は、データを処理してわかりやすい Web ページにするために使用する必要があります。ファイルの提供は Web サーバー用です。おそらく、アプリケーションを書き直して固有のファイルを生成し、その場所にリダイレクトして、Web サーバーに処理させることができます。開いているソケットの数はlimits、プロセスごとに設定されます。ソケットは、開いているファイルの数にカウントされます。

于 2013-05-06T16:13:44.087 に答える