最近、コンピューターの仮想マシンで実行するテスト サーバーをセットアップしたので、XDebug を使用した対話型デバッグなどを行うことができます。ほとんどの場合、それはかなり甘いですが、同じクライアントからサーバーへの複数の要求を一度に実行すると、問題が発生しました。
問題は、ゲストとホストのネットワーク接続が実際には物理接続として存在しないため、コンピューターのハードウェアが許す限り高速に動作することです。これは通常大きな問題ではありませんが、私は APC ファイル アップロードの監視を実装しようとしています。これには、パフォーマンスを監視するためにファイル アップロードと並行して実行する AJAX 要求が必要です。現実の世界では、ネットワークによってラグやレイテンシなどが発生し、ファイルのアップロードと並行して AjaX リクエストを実行するのに十分な未使用の帯域幅が残されます。ただし、テスト マシンでは、使用可能な帯域幅がまったく残っていないため、アップロードが完了するまで、AJAX 要求はサーバーからデータを取得できません。
仮想マシン (Apache、PHP、または Linux ユーティリティ) で、HTTP 要求ごとに利用可能な帯域幅を制限する帯域幅管理をセットアップすることは可能ですか? たとえば、各リクエストは 1 mbps に制限されますが、クライアントとサーバー間で同時に複数のリクエストが存在する可能性がありますか? これができれば、アップロードが実際に完了するまで停止するのではなく、アップロードの進行中に AJAX リクエストがデータをフェッチできるようになることを願っています。
IPRelay というユーティリティを試してみましたが、機能しないか、少なくともリクエストごとに制限する方法では機能しないようです。