2017-06-28 5 views
0

私のlaravelアプリケーションでは、guzzライブラリを使用してリモートサーバーにHTTPリクエストを行っています。しかし、データがローカルホストに到達するまでには長い時間が必要です。ここで ローカルホストに到達するデータの時間差が大きい

は、私は、コマンド ping server_IPを実行した場合しかし、私は大体175ms平均伝送時間として取得し、私はブラウザに乗るresposne、 enter image description here

です。

私はCPU使用量を監視した後、infinteループでも監視していましたが、多くの使用方法が見つかりませんでした。

また、私のlaravelアプリケーションをnginxサーバーにホストしようとしましたが、私はまだ約1-1.1秒のオーバーヘッドを観察しています。

この遅延を引き起こす原因は何か、どのように減らすことができますか?

答えて

0

潜在的な理由はほとんどありません。

  1. Laravelは最も高速なフレームワークではありません。 1回のリクエストごとにロードする必要があるファイルは数百にもなります。サーバーにSSDドライブがない場合、パフォーマンスはひどくなります。 RAMDISKを作成してそこからファイルを提供することをお勧めします。

  2. ネットワーク待ち時間。 wiresharkを開き、実行する必要があるすべてのリクエストを確認します。これらのすべてがパフォーマンスに悪影響を及ぼし、そのうちのいくつかはあなたの周りを回ることができません(DNS、...)。 CSSファイルとJSファイルを組み合わせて、要求数を最小限に抑えてください。ほとんどの状況では待ち時間がIOの制約ではなく、CPUの使用率によるものであることを念頭に置いて、サーバー側の

  3. データベース接続、大量のデータを取得し、セットアップに時間がかかります...

ベア。さらに、サーバーが取得する1秒あたりの要求数が0になるテスト/試作環境では、

+0

私のアプリケーションはすでにlaravelで構築されているため、別のフレームワークを使用できない可能性があります。それが問題であるかどうかを確認するSSDの良いサーバー 私が使用しているデータベースは私にとってブロックボックスですが、データベースがホストされているサーバーの応答時間は約0.8秒です。 –

関連する問題