PHP скрипт работающий по крону делает curl-запросы.
Скрипт за раз должен обрабатывать 30 адресов но в случае длительного ожидания ответа у части из них (например 5 секунд) за минуту он не успеет обработать все 30. А через минуту cron запустит ещё одну копию скрипта уже со следующей пачкой в 30 штук.
Как решить такую ситуацию что бы скрипт не простаивал с одной стороны, но и что бы избежать накопления запущенных скриптов с другой?
запускать в отдельных процессах, если они у вас идут прям без остановки каждую минуту, то будет работать параллельно. Но будет накапливаться процессы. Так что в итоге скорее всего забъется процессами если не будет успевать отрабатывать.
да, да этого хочу и избежать, а по ТЗ система должна каждую минуту опрашивать N адресов, пропуск каких-то из них нежелателен, не говоря уж о том, что бы она сама забилась...
ТёмнаяМатерия: в задаче что стоит? каждую минуту обрабатывать запрос? Есть физические ограничения на скорость обработки скрипта, время ответа сервера, парсинг и т.д. Если не успевает и забивается - надо качать железо или раскидывать на N серверов и давать паузы больше.