Asf PHP開発の配置情報常駐システムメモリ


従来MVCとAsfの比較
従来のMVCフレームワーク
リクエストのたびにプロファイルが再ロードされます.プロファイルの内容が更新されていなくても、再ロードされます.これはとても悪いデザインです.(Opcacheをオンにした場合、まだ実行するプロセス時間があります)
Asfフレーム
プロファイルに読み込まれた内容はシステムメモリに保存され、次回は直接メモリにデータを読み込むように要求されます.Asfも非常に簡単な構成を提供し、Config Cacheを実現します.
どのシーンでコンフィグCacheを開くのが適当ですか?
  • Webアプリケーションシーンで開くことをお勧めします.後のバージョンでは
  • がデフォルトで有効になる可能性があります.
  • はCLI、マルチスレッドモードでオンと同様に有効であるが、PHPスクリプトが実行されるたびに
  • が解放されるだけである.
  • サポートデータ型はstrings,arrays,integers,boolean,doubles,floats,null
  • フローチャート
    キャッシュメソッドを開く

    フレームエントリ方式php/iniプロファイルのロード
    run();

    AsfConfigPhp phpプロファイルのロード

    AsfConfigIni読み込みiniプロファイル

    構成内容の読み込み方法
    getConfig()->toArray());
    print_r(Asf\Config::get()->toArray());

    パフォーマンステスト
    Opcacheをオンにした場合、ab-c 100-n 10000のConfig Cache性能テストを簡単に行いました.
    プロファイル内のプロファイルの複雑さとパフォーマンス指標は直線的に関連していますよ
    キャッシュasfを開く.cache_config_enable = 1
    Total transferred:      16109994 bytes
    HTML transferred:       14259994 bytes
    Requests per second:    6859.01 [#/sec] (mean)
    Time per request:       14.579 [ms] (mean)
    Time per request:       0.146 [ms] (mean, across all concurrent requests)

    キャッシュなし
    Total transferred:      16080000 bytes
    HTML transferred:       14230000 bytes
    Requests per second:    6398.22 [#/sec] (mean)
    Time per request:       15.629 [ms] (mean)
    Time per request:       0.156 [ms] (mean, across all concurrent requests)

    ヒント
    Cache Configは共有メモリベースではなく、PHPプロセスベースですよ、共有メモリロックの問題はありません.