Project

General

Profile

機能 #1257

Photo Modelの画像キャッシュルール

Added by toshi_a 初音 about 1 year ago.

Status:
実装待ち
Priority:
通常
Target version:
Start date:
2018-05-24
Due date:
% Done:

0%

プラグイン名:
image_file_cache

Description

現在の画像キャッシュは、Photo Modelの画像(blobまたはpixbuf)が UserConfig[:image_file_cache_appear_limit]||32 回出現したら UserConfig[:image_file_cache_expire] || 32 日間、ファイルに格納するようになっているが、あまりにもポリシーが保守的すぎてほとんど画像が保存されていない。

このルールは緩和しすぎると一度しか表示しない添付画像のようなものもキャッシュしてしまって肥大化するため、新たに最大サイズの設定を設け、その範囲でできるだけ多くの画像をキャッシュする。

改善したいこと

キャッシュに使用するサイズをバイト単位で設定

現在は条件に合う画像を無尽蔵に保存していくが、ユーザが設定したサイズ以下までしか保存しないようにする。

画像ごとに異なるキャッシュ期間を設定する

HTTPだと Cache-Control ヘッダの値を見て、max-ageなどが指定されていればその期間だけキャッシュする。

ただし、今のPhoto Modelはデフォルトだとレスポンスボディしか見ていないし、download_routineをオーバライドしたPhoto ModelたちがCache-Controlを見て有効期限を返すようになってくれてないといけない。

サーバの Cache-Control ヘッダを無視するのが嫌なので簡単にできるなら実装したいところだが、多分ユーザ体験にはそんなに貢献しない。

Also available in: Atom PDF