0

長時間実行しているタスクを実行し、タスクをタスクキューにプッシュするアプリケーションがあります。現在、異なるユーザーがアプリケーションにログインしてアップロードジョブを開始すると、ジョブは既存のタスクとマージされ、予想される出力は達成されません。すべてのユーザーにアプリケーションエンジンアプリケーションのインスタンスを個別に実行するにはどうすればよいですか?

私が正確に必要とするのは、すべてのユーザーが大量の計算能力を必要とし、新しいユーザーが出現するたびにこれらのインスタンスを動的に作成する必要があるため、各ユーザーごとに異なるアプリケーションエンジンアプリケーションを実行することです。

インスタンスクラスとスケーリングタイプで異なるドキュメントを参照しましたが、すべての異なるユーザーに対して新しいインスタンスを開始する方法を知りませんでした。

さらに良い解決策があるかどうかをご提案ください。私は自分自身を、これを使用していないものの

+0

アップロードするコードを投稿できますか? –

+0

はい、私はそれを整理し、かなり長いので投稿しますが、私はそれを説明しましょう。アップロードモジュールがユーザーから与えられたURLからGoogleスプレッドシートを取得し、アップロードプロセスがデータの計算を始めます。ユーザーが別のURLを持っている場合は、Googleアカウントからログインし、別々のタスクをタスクキューで実行してください。私によれば、各ユーザーの個別のインスタンスに新しいメモリとリソースを割り当ててください。 –

答えて

0

the documentationはこれがあなたのためにそれを行うことをお薦めします。

<最大並列実行要求

オプション>。同時要求の数自動スケーリングインスタンスが(詳細は上記ドキュメンテーションのリンクを参照してください)スケジューラが新しいインスタンスを生成します前に、

があなたのappengine-web.XML 1にその値を設定してみてください受け入れることができます。

+0

ありがとうございます。このオプションは<自動スケーリング>で使用できることがわかりました。私のアプリケーションでは<基本スケーリング>を使用していますが、<基本スケーリング>の同様の設定で私を助けてください。 –

関連する問題