У меня был очень похожий опыт, но я остановился на другом решении.
Я тоже тестировал скрипт на 8 ядерном 32 гб дедике с широким каналом и там еле еле 10 потоков шло.
Работающими решением оказалось взять 32 ядерный локальный сервер с 64 оперативки, на не очень быстром канале, с сокс5, на нем 100+ потоков запускалось.
Скрипт тот же, никаких оптимизаций не делалось.
Стоит конечно побольше, чем аренда дедика но тут уж зависит от окупаемости твоей темы, стоит ли оно того или нет.
Но соксы могут быть узким местом, по возможности нужно делать свои соксы. Для этого, можно брать дешевые VPS и установить сокс через опенсурсный софт microsocks для линукса (в инете полно инструкций по установке, занимает не более 5 минут вручную, и можно установку через БАС автоматизировать также на случай если нужны сотни соксов).
Проверка условия на протяжении всего скрипта
-
Уважаемая поддержка, приветствую :)
Подскажите, а есть инструмент, чтобы, допустим, проверять существование элемента на протяжении всего скрипта, и в случае появления вызывать функцию? После выполнения функции, продолжать с того же места где остановился скрипт. Вставлять регулярно "проверить существование" не вариант =)
-
@Keln54 Нет, пока такого инструмента нет.
Самый приближенный к нему вариант - сделать функцию в которой будет вызвано "Проверить Существование" и реакция на появление элемента.
Эту функцию нужно вызывать во всех местах когда элемент может появиться. -
Такие "штуки" обычно называются "Событиями" и было бы круто, иметь возможность создавать свои события и обработчики к ним.
Типо когда внезапно не гаданно появилось всплывающее окно, тогда закрыть его и продолжить работу скрипта, на том самом момменте когда "преравало нас это окно"