問題タブ [task-queue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
575 参照

java - setQueueXmlPath のベース

単体テストをキュー構成ファイルに向ける方法がわかりません。

単体テストのスニペット

スタックトレース

java.lang.IllegalStateException: 指定されたキューが不明です: com.google.appengine.api.labs.taskqueue.QueueApiHelper.translateError(QueueApiHelper.java:56) で com.google.appengine.api.labs.taskqueue で zip-fetch .QueueApiHelper.translateError(QueueApiHelper.java:111) com.google.appengine.api.labs.taskqueue.QueueApiHelper.makeSyncCall(QueueApiHelper.java:32) com.google.appengine.api.labs.taskqueue.QueueImpl.add で(QueueImpl.java:310) com.google.appengine.api.labs.taskqueue.QueueImpl.add(QueueImpl.java:282) で com.google.appengine.api.labs.taskqueue.QueueImpl.add(QueueImpl.java) :267) で ...

0 投票する
2 に答える
370 参照

python - タスクキューが機能しなくなった

私はそれを使用する方法を学ぶためにグーグルアプリエンジンタスクキューAPIで遊んでいました。しかし、ローカルでトリガーさせることはできませんでした。Googleサーバーにアップロードすると、アプリケーションが魅力的に機能します。ただし、ローカルではトリガーされません。管理者から見えるのは、タスクのリストだけです。しかし、彼らのETAが来るとき、彼らはただそれを渡します。走っているようなものですが、失敗して再試行を待っています。しかし、コマンドラインでこれらのイベントを確認することはできません。

管理パネルで[実行]をクリックしようとすると、正常に実行され、コマンドラインからこれらの要求を確認できます。LinuxでGoogle-app-engine-djangoを使用してAppEngineSDK1.3.4を使用しています。私は今3時間から問題を見つけようとしていますが、見つけることができませんでした。また、GAEアプリケーションのデバッグも非常に困難です。デバッグメッセージがコンソール画面に表示されないため。

ありがとう。

0 投票する
2 に答える
1162 参照

google-app-engine - App Engine のカスタム タスク キュー?

新しいタスク キューを作成し、それを queue.yaml で定義しました。

このキューにタスクを追加する方法がわかりません。

デフォルトのキューでは、それは単純です taskqueue.add(...)

カスタム キューの場合はどうすればよいでしょうか。

0 投票する
1 に答える
185 参照

google-app-engine - タスク名に「now/30」が含まれているのはなぜですか?

「GoogleAppEngineを使用したデータパイプライン」のビデオ/PDFで、ブレットはタスク名に「now / 30」を入れて、後で理由を説明することに注意しましたが、どういうわけか彼は決して説明しません。:)
http://www.youtube.com/watch?v=zSDC_TU7rtc#t=41m35

その理由について何か考えがありますか?タスク名を再利用できない7日間とは関係がありますか?

セッションページへのリンク

0 投票する
1 に答える
400 参照

google-app-engine - エラー時に App Engine タスクが再試行されない

私のローカル開発環境では、タスク キューに追加された App Engine タスクがエラーになると、成功するまで再試行されます。ただし、本番環境ではそうではありません。私が考えていることは、urls.py にカスタム 500 ハンドラーがあるため、すべてのエラーがこれによってキャッチされ、500 エラーが上にバブルすることはないということです。

実際、これが私のタスクが再試行されない理由でしょうか? もしそうなら、これを防ぐ方法はありますか?リクエストがバックエンド タスクではなく、ユーザーによって生成された場合にのみ、handler500 ビューによってエラーがキャッチされるようにします (これらの場合は、エラーが発生して再試行を強制する必要があります)。

0 投票する
2 に答える
655 参照

java - bigtable にはロックが必要ですか?

GAE で特定のデータ更新にタスク キューを使用しています。

私の queue.xml ファイルは以下のようになります

私のキュー処理サーブレットは、タスクごとにクレジットを 1 減らします。処理中に、クレジットの利用可能性を確認し、クレジットが利用可能な場合にのみ先に進む必要があります。

クレジットはテーブルに保存され、タスクが完了すると更新されます。

タスクをスレッドと見なし、同期の問題が心配です。

2 つ以上のタスクが同時にクレジット テーブルを照会/更新するとどうなりますか? ロック機構を作成する必要がありますか? はいの場合、どのように?

0 投票する
1 に答える
1805 参照

java - app-engine Task Queue(JAVA)で複数のパラメーターを渡す

google-app-engineのキューで複数のパラメーターを渡す方法はありますか?以下のコードを使用します

私のサーブレットでは、このIDはクエリ文字列として取得されます。

6つのパラメータを渡す必要があります。

0 投票する
1 に答える
89 参照

google-app-engine - App Engineで一定期間後に実行するタスクを作成しますか?

2つのタスクを約2分間隔で実行する必要がありますが、両方を同時にキューに挿入する必要があります。どうすればこれを行うことができますか?

この実行に時間コンポーネントを挿入する方法はありますか?

例を挙げて説明していただけますか?

0 投票する
1 に答える
550 参照

google-app-engine - アプリ エンジン タスクは、実行された回数をカウントできますか?

私は Google App Engine で 1 時間に数千のタスクを実行していますが、複数回再試行してもそのうちの約 0.1% が失敗しています。理想的には、試行をやめて終了してもらいたいです。ただし、アプリ エンジンの設計により、何度も何度も試行しているように見えます。実行が失敗するたびに増加するバックオフ時間があることは知っていますが、n回再試行した後に終了させたいと思います。

どうにかしてこれを達成できますか?タスクは、実行に失敗した回数をカウントできますか?

0 投票する
2 に答える
1941 参照

python - Google App Engine: この処理にタスク キューを使用する方法

Python GAE SDK を使用しています。

の 6000 以上のインスタンスに対して実行する必要がある処理がありますMyKind。1 回のリクエストで処理するには遅すぎるため、タスク キューを使用しています。1 つのタスクで 1 つのエンティティのみを処理する場合、数秒しかかかりません。

ドキュメントによると、「バッチ」で追加できるタスクは 100 個までです。(それはどういう意味ですか? 1 つの要求で? 1 つのタスクで?)

そこで、「バッチ」が「リクエスト」を意味すると仮定して、データストア内のエンティティごとにタスクを作成する最善の方法を見つけようとしています。どう思いますか?

MyKindの順序が決して変わらないと仮定できれば簡単です。(処理によって実際にMyKindインスタンスが変更されることはありません。他のタイプの新しいインスタンスが作成されるだけです。) 100 未満の間隔で、開始する場所のオフセットをそれぞれに与えて、一連のタスクを作成できます。次に、各タスクは、実際の処理を行う個別のタスクを作成できます。

しかし、非常に多くのエンティティがあり、元の要求で必要なすべてのスケジューリング タスクを追加できない場合はどうなるでしょうか? これにより、再帰的な解決策が必要だと思います。各タスクは、与えられた範囲を調べます。範囲内に要素が 1 つしかない場合は、その要素に対して処理を行います。それ以外の場合は、範囲を後続のタスクにさらに分割します。

エンティティを識別するためにオフセットと制限を使用することを期待できない場合 (順序が一定であることが保証されていないため)、それらのキーを使用することはできますか? しかし、その後、何千ものキーを送信する可能性があり、扱いにくいようです.

ここで正しい道をたどっていますか、それとも検討すべき別の設計がありますか?