【发布时间】:2023-03-31 13:27:01
【问题描述】:
我正在尝试在 dynamodb 中实现 TTL(生存时间),并随着时间得到意想不到的结果。
填充此数据库的我的 lambda 函数 (nodejs10.x) 对 created_on 和 code_expiration 字段使用以下代码:
const created_on = Date.now()
const code_expiration = created_on + (process.env.EXPIRY_MINUTES * 60 * 1000)
在我的 lambda 环境变量中,我将 EXPIRY_MINUTES 设置为 2880
看着https://www.epochconverter.com/,我的纪元时间整数得到以下值:
created_on: 1569822339715
GMT: Monday, September 30, 2019 5:45:39.715 AM
Your time zone: Monday, September 30, 2019 1:45:39.715 AM GMT-04:00 DST
Relative: 9 minutes ago
code_expiration: 1569995139715
GMT: Wednesday, October 2, 2019 5:45:39.715 AM
Your time zone: Wednesday, October 2, 2019 1:45:39.715 AM GMT-04:00 DST
Relative: In 2 days
我很好奇,为什么当我将鼠标悬停在 dynamodb 中的记录上时,它显示的日期是大约 5 万年后?
我需要以不同的方式捕捉纪元时间吗?
如果我处理正确,TTL 服务会将其读取为 02/10/2019 还是 02/03/51721?
【问题讨论】:
标签: javascript node.js amazon-web-services amazon-dynamodb