RSS フィード ジェネレーター アプリケーションを作成したいと考えています。
RSS フィードのキャッシングにワニスまたは同様のキャッシング ソリューションを使用できるかどうかを知りたいです。
はい、Varnish を使用して RSS フィード アプリケーションをキャッシュすると、非常にうまく機能します。
アプリケーションから通常の「Cache-Control: max-age=XXX」応答ヘッダーを送信するだけで、Varnish はその期間中、喜んでそれをキャッシュします。
一部の RSS クライアントが "?forceupdate=" GET 引数を RSS フィードに送信するのを見てきました。トラフィックのレベルと要件によっては、リクエスト URL のサニテーションを行って処理する必要がある場合があります。
sub vcl_recv {
if (req.url ~ "/rss/") {
# remove any GET arguments to increase cache hit rate
set req.url = regsub(req.url, "\?.*$", "");
}
}