0

私は実際に Google App Engine で Web アプリケーションを実装しています。これにより、GAE の要件とベスト プラクティスを通じてデータベースとアプリケーションを再設計するのに、しばらく時間がかかりました。

私の問題は次のとおりです。GAE がフォールト トレラントであること、またはどの程度フォールト トレラントであることをどのように確認できますか? これに関する GAE のドキュメントは見つかりませんでした。これは、私にとって欠点となる可能性のある問題です。たとえば、私のアプリでは、データストアからエンティティを読み取り、それをアプリケーションで計算してから配置する必要があります。データストア上。この場合、これが正しく行われ、正しいデータが得られることをどのように確認できますか? たとえば、計算が行われたマシンがクラッシュした場合はどうすればよいでしょうか?

ご協力ありがとうございました!

4

2 に答える 2

3

リクエスト中にサーバーがクラッシュした場合、そのリクエストは失敗しますが、新しいリクエストは別のサーバーにルーティングされます。したがって、1人のユーザーにはエラーが表示される場合がありますが、残りのユーザーには表示されません。データストア内のデータは問題ありません。一貫性を保つ必要のあるデータがある場合は、トランザクションで更新を行うため、更新のセット全体が適用されるか、まったく適用されません。

于 2009-11-04T21:47:35.960 に答える
0

同じエンティティグループで動作するトランザクションはシリアルに実行されますが、異なるエンティティグループで動作するトランザクションは並行して実行されます。したがって、アプリ内のすべてが読み取りと書き込みを行う単一のエンティティがない限り、スケーラビリティはトランザクションの影響を受けません。

于 2009-11-05T18:35:20.023 に答える