0

当我查看 redis 中的 rails 缓存键时,它看起来像这样:

 get cache:pause_mything
"\x04\bo: ActiveSupport::Cache::Entry\t:\x0b@valueT:\r@version0:\x10@created_atf\x171598381810.4477415:\x10@expires_in0"

如何解释“created_at”时间戳?

4

1 回答 1

1

数据已编组。您可以像这样使用 ruby​​ 反序列化:

Marshal.load("\x04\bo: ActiveSupport::Cache::Entry\t:\x0b@valueT:\r@version0:\x10@created_atf\x171598381810.4477415:\x10@expires_in0")
# => #<ActiveSupport::Cache::Entry:0x000055904baf7ae0 @value=true, @version=nil, @created_at=1598381810.4477415, @expires_in=nil> 

这表明您 created_at 字段的实际值为1598381810.4477415. 这只是一个 unix 时间戳,自 01.01.1970 以来的秒数。把它变回Time使用.at

Time.at(1598381810.4477415) # => 2020-08-25 18:56:50 +0000
于 2020-09-24T10:26:12.633 回答