У меня был очень похожий опыт, но я остановился на другом решении.
Я тоже тестировал скрипт на 8 ядерном 32 гб дедике с широким каналом и там еле еле 10 потоков шло.
Работающими решением оказалось взять 32 ядерный локальный сервер с 64 оперативки, на не очень быстром канале, с сокс5, на нем 100+ потоков запускалось.
Скрипт тот же, никаких оптимизаций не делалось.
Стоит конечно побольше, чем аренда дедика но тут уж зависит от окупаемости твоей темы, стоит ли оно того или нет.
Но соксы могут быть узким местом, по возможности нужно делать свои соксы. Для этого, можно брать дешевые VPS и установить сокс через опенсурсный софт microsocks для линукса (в инете полно инструкций по установке, занимает не более 5 минут вручную, и можно установку через БАС автоматизировать также на случай если нужны сотни соксов).
Время сна и пробуждения скрипта, как?
-
День добрый товарищи) понимаю могу дублировать чей то вопрос, рыл форум, что то подобное находил, но всё же не совсем понятно как реализовать. Очень нужно реализовать логику сна и пробуждения скрипта. Время сна и пробуждения указывается в ресурсе, например уснуть в 23:00 или в 00:00 и проснуться в 07:00 или любое другое время (и так каждый день если скрипт работает сутками). Кто знает помоги люди добрые, если можно более подробно, уже всю голову сломал( А если совсем не в лом то с примером проекта) заранее благодарен)
-
Получить время в часах, без минут. if [[time]] == 00
Спать 7 часов
Так же и в 7 утра, if [[time]] >= 07 -
Лучше даже спать не 7 часов, а например 1 минуту, и повторно проверять время, так ровно в 07:00 скрипт начнёт работу
-
@xiniy22281 Берем ситуацию что скрипт заканчивает работу в 59 минут 59 сек, ждет 1 минуту проверяет время и так далее. Наступает 6:59:59 скрипт спит минуту, на обработку данных и т.д теряет секунду, и опля при проверке 01 минута, и скрипт теряя час запуститься в 8 часов вместо 7...
BAS это смесь заразы и выноса мозга, и самая мелкая проблема которую знаешь и не пофиксил, случиться сразу же как начал работу.
-
@Dodok проверка не учитывает минуты, только часы. Соотвественно даже если скрипт запустить в 07:01, 07:10, 07:59 он все равно начнёт работу.
-
@xiniy22281 Для таких извращений давно создан планировщик задач. Нет смысла тянуть проверки времени на такой промежуток.