nginx выдает ошибку 504, когда PHP требуется некоторое время для обработки

Я делаю валютную систему (не большую, а простую), где пользователи смогут конвертировать валюты в другую, это не большой проект, а небольшой проект с несколькими людьми. Тем не менее, я использую PHP для очистки калькулятора валют Google, который очищает один раз в день и сохраняет его в memcached, когда срок действия элемента истекает в memcached, он повторно очищает, чтобы получить обновленные значения валюты.

Когда эта проблема возникает при очистке Google (в настоящее время получает 24 валюты и получает 24 валюты для каждой валюты, поэтому скрипт очищает 48 разных страниц, когда он работает, я часто получаю тайм-аут 504 Gateway, поскольку скрипт работает около 200 секунд.

Поскольку выдается ошибка, я не уверен, что вы можете временно увеличить тайм-аут nginx через PHP, когда скрипт выполняет очистку, а затем вернуться обратно после завершения.

Я думал о том, чтобы сделать это с помощью задания cron, решит ли это проблему лучше, чем делать это, когда пользователь посещает сайт?


person MacMac    schedule 17.11.2011    source источник


Ответы (1)


Вы должны использовать задание cron ... всего, что может вызвать тайм-аут в браузере, следует избегать любой ценой.

Просто мои 2 цента..

person Lars    schedule 17.11.2011
comment
А если серьезно... Синхронная загрузка больших файлов и сценарии отладки - это два очевидных случая для серьезного ответа на этот вопрос. - person tonyhb; 09.03.2012