[Сделано]добавить постепенный запуск потоков
-
суть: сохраняю в файл ajax ответ со страницы, то есть все потоки не перегружают страницу
проблема: при запуске от 50 потоков выходит ошибка, что не удалось создать процесс (загрузка процессора была 100%) и другие потоки тоже работать не начинают
как сейчас: при запуске в 45 потоков идет кратковременная нагрузка на процессор 100% и через минуту как все потоки откроются и страницы загрузятся общая загрузка на процессор около 50%
как хотелось бы: чтобы потоки запускались не все сразу, а, например, по 10 каждую 1 минуту. тогда бы через 10 минут можно было запустить 90 потоков, увеличив скорость обработки базы в 2 раза.P.S. добавить какой то чекбокс. кто уже оттестировал свои скрипты на 50 потоках смогут эффективнее использовать ресурсы своего пк.
-
@oleg4ever said in добавить постепенный запуск потоков:
суть: сохраняю в файл ajax ответ со страницы, то есть все потоки не перегружают страницу
проблема: при запуске от 50 потоков выходит ошибка, что не удалось создать процесс (загрузка процессора была 100%) и другие потоки тоже работать не начинают
как сейчас: при запуске в 45 потоков идет кратковременная нагрузка на процессор 100% и через минуту как все потоки откроются и страницы загрузятся общая загрузка на процессор около 50%
как хотелось бы: чтобы потоки запускались не все сразу, а, например, по 10 каждую 1 минуту. тогда бы через 10 минут можно было запустить 90 потоков, увеличив скорость обработки базы в 2 раза.P.S. добавить какой то чекбокс. кто уже оттестировал свои скрипты на 50 потоках смогут эффективнее использовать ресурсы своего пк.
Есть функция сна. Есть возможность, определить номер потока.
Всё делается через текущий функционал.
-
@xclsv ошибка "timeout during creating new process", то есть именно инициализация грузит проц. все потоки сначала инициализируются. если бы сон можно было добавить перед инициализацией - тогда да.
-
@oleg4ever said in добавить постепенный запуск потоков:
@xclsv ошибка "timeout during creating new process", то есть именно инициализация грузит проц. все потоки сначала инициализируются. если бы сон можно было добавить перед инициализацией - тогда да.
Вы пробовали использовать функцию сна в зависимости от номера потока?
-
@oleg4ever, инициализация не срабатывает потому, что ресурсы уже закончились. Если задержку поставить, то все будет ок. На форуме есть пара тем с рецептами. Есть даже способ по 50 потоков за раз стартовать.
-
Если использовать открытие/закрытие браузера, то скрипт с задержками старта в виде сна (скажем в 300 потоков) будет отображать галочки браузеров по мере их запуска. Здесь явно видно что бас не получает нагрузку от создания 300 потоков в один момент времени.
-
@oleg4ever поиск по форуму поюзай.. первое попавшееся http://community.bablosoft.com/topic/2028/задержка-между-потоками/5
-
@oleg4ever В новой версии браузер будет создаваться только по мере необходимости, тоесть достаточно поставить спать в начало работы.
В будущем будет параметр, который ограничивает количество одновременно запускаемых браузеров.
-
@support как уже писал свежий движек хрома меньше вроде ресурсов ест
и тоже будит профит если его обновить
-
Добавил возможность плавного запуска браузеров.
Есть возможность ограничить нагрузку по 3 параметрам:
- Количество одновременно создаваемых браузеров.
- Минимальное количество памяти в системе.
- Максимальная нагрузка на процессор.
Все это касается только запуска браузера.
При отсутствии необходимых ресурсов, БАС выдает такое сообщение:
Это сделано для того, чтобы не было видимости зависания.
А вот так выглядит плавный запуск(пачками по 10).
-
@support, отлично, удобства добавляются! Спасибо! Может в этой новой версии ещё и лог раздельный по потокам реализуете?)
-
Вотето админ дает ) На моих глазах БАС превращается в что-то оооччченнь крутое (он и так уже давно крут, но такими плюшками вообще нет слов)! Видно, что админ прислушивается к пользователям, делает так, чтобы им было просто и продуктивно работать.
-
@out Рад вас снова видеть на форуме)
-
@Antonio Думаю да, но чуть позже. Скоро интерфейс скомпилированных ботов можно будет сделать на хтмл + js с визуальным конструктором, и там можно будет изменить стандартное поведение лога просто обработав событие "log" на js. Но это только для скомпилированных.