0

大きなトラブルに沈み、

誰でも教えてもらえますか、どうすればサイファーを介して書き込みロックを取得できますか。注:私はREST APIを使用するので、私のサイファーはPHPになります。

編集済み:シナリオ:

Neo4j REST サーバーと PHP を使用してアクセスしています。

これで、新しいユーザー ID を生成する「counter-node」というノードを作成しました。ロジックは、前の値に 1 を加算するだけです。

2 人のユーザーが同時に来ている場合、最初のユーザーは 'counter-node' 値を読み取りますが、それを 1 に更新する前に、2 番目のユーザーはそれを読み取ります。したがって、「counter-node」の値は期待どおりではありません。

任意のヘルプ

4

2 に答える 2

1

書き込みロックを明示的に取得する必要はありません。トランザクションで変更するすべてのノードは、自動的に書き込みロックされます。

したがって、ロジックでこれを行う場合:

start tx
increment counter node
read the value of the counter node and set it on the user node as ID
commit tx

2 人のユーザーが同じ ID を取得することはありません。

于 2013-08-28T11:24:03.800 に答える