Всё таки хотелось бы понять как правильно пользовать мнопоточность в Хумане.
1-й Вариант: запускаем нужное количество копий одной и той же версии программы из одной папки и используем один скрипт.
2-й Вариант: копируем нужное количество копий в отдельные папки вместе со скриптом и запускаем каждую копию из своей папки с отдельным скриптом.
Как работает многопоточность?
- RomanZhilin
- Сообщения: 3
- Зарегистрирован: 10 окт 2017, 13:30
Re: Как работает многопоточность?
Можно работать и так и так, но более стабильный это конечно же 2-й вариант. 1-й вариант можно использовать для очень простых скриптов и то могут возникнуть проблемы, так все запущенные таким образом копии будут использовать один и тот же php. При этом если возникнут проблемы при работе с одноим из потоков скорее всего упадут все.
2-й вариант наиболее стрессоустойчивый, так как при возникновении проблем падает только поток, где возникли проблемы, а остальные пашут себе дальше.
Есть ещё вариант когда каждый поток или N потоков запускают на виртуалках, но это делается когда нужны разные OS и более высокий уровень анонимности для работы скриптов.
С организацией работы во многопоточном режиме с Human Emulator Studio вам поможет XHE Local Manager
Материалы по работе с программой во многопоточном режиме:
Старые материалы:
FAQ по многопоточности: https://xn--80awbbeioodeq4h3a.xn--p1ai/faq/multithread.php
статья Как работать с Human Emulator во многопотоке: http://www.x-scripts.com/articles/multithread.php
статья Как работать с Human Emulator во многопотоке. Запуск из bat-файла. http://www.x-scripts.com/articles/multithread1.php
Новое:
статья Многопоточность в Human Emulator Studio. Изолированные закладки.
Старое, но актуальное видео демонстрирующее как работает многопоточность:
2-й вариант наиболее стрессоустойчивый, так как при возникновении проблем падает только поток, где возникли проблемы, а остальные пашут себе дальше.
Есть ещё вариант когда каждый поток или N потоков запускают на виртуалках, но это делается когда нужны разные OS и более высокий уровень анонимности для работы скриптов.
С организацией работы во многопоточном режиме с Human Emulator Studio вам поможет XHE Local Manager
Материалы по работе с программой во многопоточном режиме:
Старые материалы:
FAQ по многопоточности: https://xn--80awbbeioodeq4h3a.xn--p1ai/faq/multithread.php
статья Как работать с Human Emulator во многопотоке: http://www.x-scripts.com/articles/multithread.php
статья Как работать с Human Emulator во многопотоке. Запуск из bat-файла. http://www.x-scripts.com/articles/multithread1.php
Новое:
статья Многопоточность в Human Emulator Studio. Изолированные закладки.
Старое, но актуальное видео демонстрирующее как работает многопоточность:
Re: Как работает многопоточность?
Самый надежный способ - виртуалки. На 16 гиг оперативы, молотят 10 виртуалок, можно и больше запустить, но проц слабоват. Поставил еще комп , проц i7 , но оперативы мало, вообщем нагрузка при 6 виртуалках в среднем 10%.
Re: Как работает многопоточность?
Для каждой виртуалки нужна новая лицензия Human . А для запуска большого количества копий нужен только процессор потолще и ОЗУ ~2 Гига на экземпляр.
Re: Как работает многопоточность?
Подскажите, пожалуйста. Ведущий скрипт принимает решение о запуске нескольких дополнительных потоков. Запускает .bat файл (из примера https://humanemulator.blogspot.com/2010 ... lator.html) командой $app->run_as_bat(). Первый аргумент функции - "содержимое bat файла". Но это многострочный текст. Таки запихивать это всё в команду?
Re: Как работает многопоточность?
Пример так и работает. Можно конечно записывать bat файл отдельно и запускать его через команду $app->shell_executeE=mc2 писал(а): ↑05 мар 2020, 13:34Подскажите, пожалуйста. Ведущий скрипт принимает решение о запуске нескольких дополнительных потоков. Запускает .bat файл (из примера https://humanemulator.blogspot.com/2010 ... lator.html) командой $app->run_as_bat(). Первый аргумент функции - "содержимое bat файла". Но это многострочный текст. Таки запихивать это всё в команду?
$app->shell_execute("open","run.bat","","",false);
Также можно помещать содержимое в переменную, а переменную подставлять в команду run_as_bat