1

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

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

ありがとう。

4

2 に答える 2

1

開発サーバーはタスクを自動的に実行しません。自分でタスクを開始する必要があります。これは設計機能であるため、いつでも実行するのではなく、実行するとどうなるかを確認できます。

基本的に、アプリケーションに問題はありません。これは開発サーバーの機能です。

于 2010-05-29T15:43:10.937 に答える
0

ローカル開発サーバーはnowキューをサポートします。ローカル開発のモジュールの秘訣は、異なるドメイン名を使用する代わりに、異なる(動的)ポートでローカルホストにデプロイすることです。タスクをキューに送信するときに行う必要があることは、キューがリッスンしているホストとキューのURLを追加する必要があります。これがJavaの例です(申し訳ありません)。Pythonにも同様の方法があります。

    ModulesService moduleService = ModulesServiceFactory.getModulesService();
    String hostNameToQuery = moduleService.getVersionHostname("worker_module_name", null);
    logger.info("hostNameToQuery=" + hostNameToQuery);
    TaskOptions options = TaskOptions.Builder
            .withUrl("/workerQueueURL")
            .header("Host", hostNameToQuery)
            .param("taskKey", taskKeyString)
            .retryOptions(RetryOptions.Builder.withTaskRetryLimit(0));

これがうまくいったかどうか教えてください。

于 2014-09-30T16:47:08.913 に答える