簡體   English   中英

檢查 ttl 的 Rails.cache 對象

[英]checking ttl for Rails.cache object

所以我有一些項目存儲在 Rails.cache 中,我總是用 :expires_in => 5.minutes 寫它們

我的問題是,有沒有辦法查看緩存條目上的 ttl 是什么?

我知道 activesupport 中的入口類有一個方法,但我似乎無法從 Rails.cache 方法中獲取入口對象。

順便說一下,我正在實施速率限制。

您可以使用以下命令檢查 Rails 緩存中的 ttl。

Rails.cache.data.ttl("yourkey")

如果您的Rails.cache是一個 FileStore,並且沒有要查詢的.data ,您需要引用包含相關項目的文件:

fpath = Rails.cache.send :key_file_path, "yourkey"
cache_entry = Marshal.load File.read fpath
expiration = Time.at cache_entry.expires_at

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM