0

Python Google App エンジン SDK と Django フレームワークを使用しています。私の場合、タスクキューはデッドライン超過エラーをスローしています

DeadlineExceededError: HTTP 要求への応答の全体的な期限を超えました。

ただし、基本スケーリングでタスク キューを使用し、基本スケーリングまたは手動スケーリングでドキュメントタスクに従って使用すると、最大 24 時間実行できます。

タスクはすべての MySQL DB 値を更新しているため、時間がかかります。

投稿リクエストを送信してタスクを開始する

@api_view(['POST'])
def post_url(request):
 params= dict(.......)#some dict
 taskqueue.add(url='/tasks/gcm/gcm_all_user/',
                          params=params,
                          method="POST")
 return Response('Initiated task')

このタスクは、dispatch.yaml によって基本スケーリング モジュールにディスパッチされます。

dispatch:
- url: "*/tasks/*"
  module: tasks

task モジュールには url のハンドラーがあります

application: some-application
module: tasks
version: 2
runtime: python27
api_version: 1
threadsafe: true
basic_scaling:

libraries:
- name: MySQLdb
  version: "latest"

handlers:
- url: /tasks.*
  script: app.wsgi.application

デッドライン超過エラーなしでタスクをより長く実行する方法を誰か教えてください。

4

1 に答える 1