記事のアクセス数をRedisに保存しているのですが、そのkeyに対して有効期限を設定する場合、以下のようなコードで問題ないのでしょうか?
ruby
1 2def show 3 4 @article = Article.find(params[:id]) 5 REDIS.multi do 6 # 1)総合ランキング用 7 REDIS.zincrby "articles/daily/#{Date.today.to_s}", 1, @article.id 8 REDIS.expire( "articles/daily/#{Date.today.to_s}", 172800) 9 # 2)カテゴリランキング用 10 REDIS.zincrby "#{@article.category_id}/articles/daily/#{Date.today.to_s}", 1, @article.id 11 REDIS.expire( "#{@article.category_id}/articles/daily/#{Date.today.to_s}", 172800) 12 end 13 14end
上記の場合、記事ページにアクセスする度にexpireで有効期限を設定する事になるので、若干無駄な気がしています。
しかしながら、他にどこに記述すればいいのかもわからず。
一般論として、このようなexpireの記載方法および記載場所で問題ないものでしょうか??
いかんせんRedisは今まで使ったことがなく勘所がわかっておりません。
教えていただけると嬉しいです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。