0

GAE で Twitter からメッセージを読み取るアプリケーションを作成しています。アプリケーションは常にメッセージを読み取り、それに反応する必要があります。私は現在、アイデアをテストしているので、バックエンドを使用したくありません。バックエンドは、そのようなニーズに対する自然な選択です。毎分実行されるcronジョブと、50秒間連続してメッセージを読み取ってジョブを処理するサーブレットを使用しています。

  1. このトラフィックのみを処理するために GAE が最大 3 つのインスタンスを開くことに気付きましたが、それは悪いことですか?
  2. バックエンドはそのような仕事に適したツールですよね?
  3. バックエンドなしでそれを行うより良い方法はありますか?

ありがとうございました。

4

2 に答える 2

2
  1. インスタンスのスピンアップは、アプリケーション設定によって制御されます。リクエストが完了するまでに時間がかかる場合、設定によっては、新しいインスタンスのスピンアップがトリガーされる場合があります。

  2. タスク キューを使用すると、データのフェッチを非常に効率的に行うことができます。これにはバックエンドは必要ありません。バックエンドは、リクエスト間でデータをメモリに保持する必要がある場合に便利で、Datastore リクエストを効果的に節約できます。

  3. 前述のように、フェッチ タスクのタスク キューを調べてください: データ フェッチ タスクにはどのくらいの時間がかかりますか? どのくらいの頻度で実行する必要がありますか?

于 2012-04-21T07:03:30.217 に答える
1

このトラフィックのみを処理するために GAE が最大 3 つのインスタンスを開くことに気付きましたが、それは悪いことですか?

これら 3 つのインスタンスのおかげで、cron は正常に動作し続けているため、悪いことではないと思います。

Cron の実行は数秒遅れる可能性があり、インスタンスのスピンアップにもさらに数秒かかる可能性があります。さらに、50 秒後、おそらくアプリで何らかのコードが実行されるため、これにも時間がかかる可能性があります。

特定の cron リクエストが呼び出されたときに、以前に実行されたインスタンスが利用可能な状態であることを示す証拠がある場合は、ここで共有してください。

バックエンドはそのような仕事に適したツールですよね?

絶対。

バックエンドなしでそれを行うより良い方法はありますか?

あなたにとって「より良い」ものを知らない限り、答えるのはやや難しいです. 現在の戦略に問題はありますか?

于 2012-04-21T00:34:33.367 に答える