#author("2016-12-01T23:23:37+09:00","","") RIGHT:&size(12){Category:[[:Plugin]]}; * bugtrack_listの高速化 [#x0511251] - ページ: [[BugTrack2]] - 投稿者: [[umorigu]] - 優先順位: 低 - 状態: 提案 - カテゴリー: プラグイン - 投稿日: 2016-11-30 (水) 00:54:25 - バージョン: 1.5.1 ** メッセージ [#b8383f90] bugtrack_listは、表示時に列挙対象の全ページを読み込むのでサーバー負荷が高く、また表示に時間がかかっている。 表示項目を適切にキャッシュすることで、表示の高速化とサーバー負荷軽減を実現したい。 -------- - tracker_listの高速化のチケットはありましたが、bugtrack_list単体のものはなかったので立てました。tracker_listとbutrack_listの仕組みは似ているため、tracker_listの高速化のヒントになると思います。また、bugtrack_listの方がシンプルで高速化の対応も容易だと踏んでいます -- [[umorigu]] &new{2016-11-30 (水) 00:57:22}; - しかしbagtrack_listをヘビーに使っているのは世界中でこのサイト(pukiwiki-dev)だけかもしれません :-) -- [[umorigu]] &new{2016-11-30 (水) 00:58:13}; - 更新時刻ベースのキャッシュを試作してみました。 pukiwiki.osdn.jp/_dev3/?BugTrack キャッシュなしでは4-7秒のところ、キャッシュを実装して1秒台で表示できるようになっています -- [[umorigu]] &new{2016-11-30 (水) 03:08:49}; - 👍 -- [[bee]] &new{2016-12-01 (木) 12:19:20}; -- (主題と全く関係ないのですが)Android 版 Firefox で絵文字が見えない…。 -- [[bee]] &new{2016-12-01 (木) 12:54:42}; - 前準備(?)の[[commit:3e7e44d6e4c39c334fc86d68cff0b2d1fb38c560]]で、少し疑問があります。呼び出している関数の定義側 function plugin_bugtrack_list_pageinfo($page, $no = NULL, $recurse = TRUE, $filetime = NULL) で、move to NewPageName のリダイレクト先を読み込んでリストに反映するかを制御している3つ目の引数はTRUE or FALSEフラグ前提で設計されていたような気がするので、本来の意味合いでは $data[] = plugin_bugtrack_list_pageinfo($page['name'], NULL, FALSE, $page['filetime']); の呼び出し方のほうが正しいのではないかと… -- &new{2016-12-01 (木) 21:12:18}; -- ありがとうございます。ご指摘の通りでした -- [[umorigu]] &new{2016-12-01 (木) 23:22:24}; #comment