GAE - как избежать тайм-аута запроса на обслуживание через 1 день
Как я объяснил в этом посте, я пытаюсь вычеркнуть твиты из Twitter.
Я реализовал предлагаемое решение с помощью сервисов, так что в бэкэнде происходит настоящая тяжелая работа.
Проблема в том, что примерно через один день я получаю эту ошибку
"Process terminated because the request deadline was exceeded. (Error code 123)"
Я думаю, это потому, что при ручном масштабировании время ожидания запросов истекает через 24 часа.
Можно ли заставить его работать более 24 часов?
1 ответ
Вы не можете выполнить один запрос / задачу более 24 часов, но вы можете разделить ваш запрос на несколько частей, каждая из которых выполняется в течение дня. Неразумно запускать запрос на неопределенный срок, поэтому механизм приложений закрывает их через определенное время, чтобы предотвратить длительный бездействующий / зацикленный запрос.
Я бы порекомендовал, чтобы ваша задача сработала в конце вызова, чтобы запустить очередность следующей задачи, так что это происходит автоматически, и вам не нужно ставить задачу ежедневно. Убедитесь, что у вашей задачи есть какой-то курсор или какой-то другой способ сообщить о ходе выполнения, чтобы он не дублировал работу.