タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

スケジュールとphpに関するiwwのブックマーク (1)

  • PHPセッションのGCを非同期にする

    概要 PHPのセッションハンドラをデフォルトで使っている場合のガーベージコレクタ(GC)の話。PHPはサーバ上で保存してあるセッション情報を保存してあるファイルをを定期的に削除している。削除するタイミングはPHPが起動する時、HTTPリクエストまたはコマンドラインからPHPが起動した際に一定の確率でGCが起動するようになっている。Javaのアプリケーションサーバならメモリ上にJVMが常駐しているからプログラムの起動とは非同期にできるが、PHPは同期で処理している。そのため、PHPではGCが起動したときにプログラムの実行時間が長ってしまう。よって、大規模サイトになったときには必然的にセッションファイルが扱うセッションが多くなるため、GCにかかる時間が長くってしまうから、同期によるPHPのGCに任せないで自前で非同期にGCを行うべき。 設定項目 PHPのGCを制御する設定はphp.iniに記載

    PHPセッションのGCを非同期にする
  • 1