Riak の Links を使用して、二重リンク リストを作成します。
そのためのアルゴリズムは非常に単純です。
- 'N0' を挿入する新しい要素とする
- 「次の」リンクを含むリストの先頭を取得します (N1)
- N1 の「前」を N0 に設定します。
- N0 の「次」を N1 に設定します
- リストの先頭の「次」を N0 に設定します。
ここでの問題は、明らかな競合状態があることです。2 つの同時クライアントがリストの先頭を取得すると、アイテムの 1 つが「失われる」可能性が高いためです。それを回避する方法はありますか?