トップ 差分 一覧 Farm ソース 検索 ヘルプ RSS ログイン

BugTrack-plugin/389

ページの作成や編集にはユーザ登録が必要です。

accessdays プラグインの簡易高速化版

  • 投稿者: Lenoir
  • カテゴリ: 修正
  • 優先度: 普通
  • 状態: 提案
  • 日時: 2008年09月21日 07時51分09秒

 内容

概要

accessdaysプラグインにおいて、集計対象データを短絡的に限定することで、アクセスログの量の増加に伴う処理時間の増大を抑制します。(私の環境における数値例: アクセスログサイズ 16MB、accessdays の処理時間 1.7秒 ⇒ 0.3秒に改善)

内容

accessdaysプラグインはアクセスログ全量を集計しているため、アクセスログの量に比例して処理に掛かる時間が増えていきます。私の環境では、アクセスログのサイズ約16MBに対し、標準のaccessdaysでは処理時間は約1.5〜1.7秒掛かります。(accessdaysを含むページの表示が半端なく重いです(^-^;))

そこで、アクセスログの集計範囲を、指定した日数分に限定することで高速化しました。この修正により、私の環境で従来約1.5〜1.7秒掛かっていた処理時間が、約0.3秒に短縮されました。

集計範囲を限定する方法は次のような単純なものです。

  • アクセスログのレコードを後ろから読んで、当日 - 指定日数 の日付より過去の日付が出現したら、そこで集計を終了する。

競合

アクセスログのローテーション等により、アクセスログの記録順序が時系列になっていない場合、正常に動作しない可能性があります。

 ダウンロード

インストール方法

標準プラグインのファイル access/AccessDays.pm に上書きしてください。

 ライセンス

GNU GPL

 コメント

  • ライセンスを書いていただけると幸いです。 - 猫P (2008年12月22日 22時08分11秒)
  • ご指摘ありがとうございます(10ヶ月越しですみません・・・)。 ライセンス追記しました。 GPLでお願いします。 - Lenoir (2009年09月10日 08時17分23秒)
お名前: コメント:
AccessDays.pm

最終更新時間:2010年03月25日 14時01分47秒