是否可以在MongoDB中設置每條消息的TTL?我想插入可以具有不同TTL的消息,我使用MongoDB檢查我是否必須重新發送消息
1 回答

猛跑小豬
TA貢獻1858條經驗 獲得超8個贊
是的,這是可能的,請參閱通過設置 TTL 使集合中的數據過期。
首先,您必須創建一個 TTL 索引,在其中設置 。您必須設置時間戳,通過將期望的TTL添加到當前時間來計算。0
expireAfterSeconds
expireAt
例如,創建一個索引:
db.log_events.createIndex( { "expireAt": 1 }, { expireAfterSeconds: 0 } )
然后,如果您想要一個文檔的3秒TTL,請將其與屬性一起插入:
"expireAt": time.Now().Add(3 * time.Second)
要獲得 TTL 為 1 小時的文檔::
"expireAt": time.Now().Add(time.Hour)
- 1 回答
- 0 關注
- 136 瀏覽
添加回答
舉報
0/150
提交
取消