2016-04-07 10 views
2

ユーザーのセッションIDのマッピングをaerospikeに保存する場合、タイプはid->[session1, session2]です。私は各セッションIDに特定のTTLを持たせたい。Aerospikeのリスト要素の個別のTTL

どうすればいいですか?マップを作成し、各要素にTTLを付けることはできますか?

答えて

3

aerospikeでは、ttlはレコードレベルのプロパティです。したがって、それをリスト/マップの要素に設定することはできません。その点では、ビンレベルでも設定することはできません。

したがって、aerospikeがレコードを自動的に期限切れにするように、2つのセッションをそれぞれのttlsで2つの異なるレコード(ユーザーIDとセッションIDを使用して複合キーを生成することによって)として保存できます。

セッションttlをセッションIDと共にペアとして保存し、セッションの終了をアプリケーションから処理する方法もあります。すべてのセッションの最大値をレコードのttlとして設定できます。すべてのセッションが終了すると、エアロスキーはシステムからレコードを失効させ、スペースを解放します。

関連する問題