2016-08-17 13 views
0

私は、Windows server 2012とubuntu 14.04の両方にデプロイされたサイトを持っており、パフォーマンスに大きな違いがあります。コードベースとDBデータはまったく同じです。php window Linuxよりウィンドウが4〜5倍遅い

Windows環境

  1. のWindows Server 2012のAWS EC2でt2.medium(デュアルコア4GBのRAM)
  2. PHP 5.5 64ビット
  3. TSのApache 2.4.23

のLinux

  1. AWS EC2でのUbuntu 14.04 t2.medium(デュアルコア4 GBのRAM)
  2. PHP 5.5 64ビット

はApache 2.4

  • TS両サイトOpCacheを有効にしています。

    実行時間(唯一のPHPの実行時間を除くすべてのネットワークトラフィック)

    • のWindows:2.6-2.8s
    • Linuxの場合:Windowsで200-400ms

    、私たちは何に気づきます1ページの負荷でほぼ100%のCPU負荷ピークと3〜4MBのIO読み取りピークがあります。

    は、私はすでにウィンドウでPHPのパフォーマンスに関するStackOverflowの中で様々なポストに出くわしたが、我々はすでに適用されている/いないavil

    任意にそれらのポストからの提案をテストしていますアドバイスをいただければ幸いです!

    +0

    アドバイス1)窓 "サーバー"から離れてください。アドバイス2)これはサーバーの問題ではなく、コーディングに関する質問であるため、代わりにサーバーの障害について質問します。 –

    +0

    @FranzGleichmannアドバイスをいただきありがとうございます –

    答えて

    0

    は最後にパフォーマンスの違いが原因PHP関数is_dir(にある自分自身にこの

    への答えを得た)

    Test1をウィンドウにひどい実行します。)(is_dirを呼び出すためにループに1000倍に簡単なスクリプトを実行します

    • のWindows:217ms
    • マック:8msの

    Test2を:

    最高の実行時間のためのリストの一番上に座る)(xdebugの とis_dirでコードをプロファイル他のいくつかの言及も、この記事が直面して他の人を助けることができる、同じ問題 https://github.com/facebook/hhvm/issues/4431

    希望を指摘します同じ問題

    関連する問題