Pythonを搭載したGoogleAppEngineで、競合状態の問題の解決策を探しています。つまり、複数のユーザーが同時に特定のカウンターをインクリメントしようとしています。そのうちの2つを見つけました。トランザクションで説明されているincrement_counter()とcompare-and-setでのbump_counter()です。私の質問:1)両方とも競合状態の問題を完全に解決していますか?2)もしそうなら、どちらが良いですか?
さらに、コードがどのように問題を解決するのかわからないので、誰かがそれらのそれぞれについてもっと詳しく説明することができますか?たとえば、1)increment_counter()トランザクション中に、別のユーザーがカウンターを更新すると、トランザクションは失敗しますか?2)同様に、compare-and-setのbump_counter()中に、別のユーザーがカウンターを更新すると、client.cas()は失敗しますか?