GAE - как избежать тайм-аута запроса на обслуживание через 1 день

Как я объяснил в этом посте, я пытаюсь вычеркнуть твиты из Twitter.

Я реализовал предлагаемое решение с помощью сервисов, так что в бэкэнде происходит настоящая тяжелая работа.

Проблема в том, что примерно через один день я получаю эту ошибку

"Process terminated because the request deadline was exceeded. (Error code 123)"   

Я думаю, это потому, что при ручном масштабировании время ожидания запросов истекает через 24 часа.

Можно ли заставить его работать более 24 часов?

1 ответ

Решение

Вы не можете выполнить один запрос / задачу более 24 часов, но вы можете разделить ваш запрос на несколько частей, каждая из которых выполняется в течение дня. Неразумно запускать запрос на неопределенный срок, поэтому механизм приложений закрывает их через определенное время, чтобы предотвратить длительный бездействующий / зацикленный запрос.

Я бы порекомендовал, чтобы ваша задача сработала в конце вызова, чтобы запустить очередность следующей задачи, так что это происходит автоматически, и вам не нужно ставить задачу ежедневно. Убедитесь, что у вашей задачи есть какой-то курсор или какой-то другой способ сообщить о ходе выполнения, чтобы он не дублировал работу.

Другие вопросы по тегам