Google Appengine のドキュメントでは、タスクは 10 分に制限されていると書かれています。ただし、遅延タスクを実行すると、60 秒で終了します。これについて言及する場所はどこにも見つかりませんでした。
Appengine の遅延タスクが 60 秒に制限されているということですか、それとも何か間違っているのでしょうか?
更新:最初のタスクはリクエストからトリガーされますが、それが戻るのを待っていません(とにかく、コールバックはありません)。私がトリガーしている後続のものは、タスク自体の中から一種の再帰的にトリガーしています。
DeferredTask df = new QuoteReader(params);
QueueFactory.getDefaultQueue().add(withPayload(df));
それらの多くは機能しますが、1分の制限に達するものについては取得しますApiProxy$ApiDeadlineExceededException
com.googlecode.objectify.cache.Pending completeAllPendingFutures: 保留中の Future のクリーンアップ エラー: com.googlecode.objectify.cache.CachingAsyncDatastoreService$3@17f5ddc java.util.concurrent.ExecutionException: com.google.apphosting.api.ApiProxy$ApiDeadlineExceededException: The API 呼び出し datastore_v3.Get() の応答に時間がかかりすぎたため、キャンセルされました。
私が気付いたもう1つのことは、これは同時に発生しているそのサーバーへの他のリクエストに影響し、DeadlineExceededException
.