我的登录会话自上次活动后 5 分钟内有效。如果有任何活动,我会通过添加 5 分钟来更新项目中的生存时间属性,否则应在“expireAt”中设置的时间将其删除。但是为什么 dynamoDB 中的项目没有按照项目“expireAt”中设置的生存时间被删除?
在 Java Spring-Boot 中,我已按照文档中所述设置了 EPOCH 时间(以秒为单位)
login.setExpireAt((System.currentTimeMillis() / 1000) + 300);
。 5 分钟后不会删除表中的项目。我可以采取什么替代方法来解决这个问题?
但是为什么 dynamoDB 中的项目没有按照项目“expireAt”中设置的生存时间被删除
DynamoDB TTL 尽最大努力工作,因为它为您的表提供免费删除。如果您的项目已超过其到期时间,那么它最终有资格被删除,但这可能是在未来的几分钟/几小时/几天后。如果您需要更严格的删除,您有一些选择: