Как оптимизировать работу в многопотоке?



  • Есть 2 идентичных скрипта, один написан на BAS другой на Zennoposter. Скрипт очень простой.Тупо заходим на один сайт под проксей, двигаем там мышкой и заканчиваем посещение. И это все делаем в многопотоке.

    В Зеннопостере стабильно работает на 500 потоках сутками без перезагрузки сервера. Настройки: 10 потоков на процесс (там на 1 процесс base.exe можно задавать несколько потоков). Выходит на потребление оперативы в пределах 30 гиг и в этом диапазоне +/- несколько гиг работает. Проц загружен на 30-50%.

    В BAS ставлю 100 потоков. Через несколько часов забил почти всю оперативку и продолжает в том же духе. Проц почти на максимуме. В самом начале ставил 300 потоков (прочитал в документации что БАС максимум это тянет) он буквально за пол часа все ресурсы сожрал и сервер ребутнулся.

    Подскажите как оптимизировать работу в многопотоке? Чтоб я на сервере запустил на несколько суток и не парился что оператива кончится. Может есть что-то подобное для настройки нескольких потоков на 1 процесс (в BAS это я так понял Worker.exe).

    Заранее благодарю за помощь!

    http://i.piccy.info/i9/142edf88d45ef2dd1238de9792b2b000/1488053349/32702/1119390/25_02_2017_21_56_23.png
    alt text



  • стоит галка перезапускать процесс?
    картинки отключены?



  • @out said in Как оптимизировать работу в многопотоке?:

    стоит галка перезапускать процесс?
    картинки отключены?

    1. Нет вродь такой галки не ставил. Подскажите где ее поставить? Я думал когда поток останавливается то и процесс на котором он работает отваливается. Походу процесс всегда висит и забивает память постепенно?

    2. Не отключал, там нужно чтоб картинки были включены. Но я не находил этой настройки. Подскажите куда смотреть?



  • @Gang said in Как оптимизировать работу в многопотоке?:

    Не отключал, там нужно чтоб картинки были включены. Но я не находил этой настройки. Подскажите куда смотреть?

    Действие запретить загрузку *.jpg *.png *.gif . Там где надо грузануть картинку, например капчу, отдельно разрешить загрузку с урла капчи. урл можно узнать тыкнув на капчу и нажать исследовать



  • @bronshik said in Как оптимизировать работу в многопотоке?:

    Действие запретить загрузку *.jpg *.png *.gif

    В упор не вижу Действие запретить загрузку *.jpg *.png *.gif Киньте скриншо если не затруднит.



  • @Gang Запретить запрос называется
    0_1488095181029_1.png



  • @bronshik Спасибо огромное!



  • @Gang еще подскажите где галку для перезапуска процесса поставить?





  • @out век живи век учись, и дураком помрешь. Спасибо. :)



  • @out благодарствую!



  • Ребята я в шоке!!! С перезагрузкой процесса БАС лупит как бешеный, производительность в сравнении с Зенкой в разы выше!!! Тот же шаблон запустил на 300 потоков с перезагрузкой процесса в настройках. Жрет всего 10 гигов операивы и 20% проца.

    Это капец!!! Я доволен как слон!!!

    Но у меня стоит задача максимум. Максимально масштабировать обьемы. Подскажите пожалуйста, если я поставлю например 500 потоков, будут ли они все корректно работать? Так как мощностей сервера вполне хватает.

    Да я читал что БАС максимум тянет 300 потоков, но вдруг что поменялось с новыми версиями?

    Или, может быть, есть вариант запускать несколько копий БАС параллельно на одном сервере?

    Мне бы сервер загрузить минимум 60-70 % мощностей. Оперативы 64 гига, проц 2 ядра по 2.7



  • @Gang said in Как оптимизировать работу в многопотоке?:

    Или, может быть, есть вариант запускать несколько копий БАС параллельно на одном сервере?

    сделал так, правда 100 лишнимхмегабайт озу за еще одну копию, но это погоду не портит)



  • @artihorror Спасибо попробую! А вы используете 1 файл шаблона на все копии БАСа? Или под каждую делаете свою копию шаблона со всеми привязаными файлами в ресурсах?

    Интересует если использовать один и тот же файл шаблона со всеми привязанными ресурсами к нему, не будет ли конфликта в обработке файлов?



  • @Gang

    Да я читал что БАС максимум тянет 300 потоков, но вдруг что поменялось с новыми версиями?

    Количество потоков на 1 копию БАС ограничено приблизительно 2000. 500 можете смело пробовать.



  • Спасибо попробую! Я установил 2 копии БАСа, запустил каждую на 300 потоков и сервер сразу же завис и перестал отвечать на команды((



  • Поставил 500 потоков. Но визуально наблюдаю только 276. Это только визуально они на главое окно не поместились, или нужно где-то снять ограничения?

    http://i.piccy.info/i9/d18b7f63e0e03e4b616b581717b60521/1488215965/40369/1119390/27_02_2017_19_16_28.png
    alt text



  • @Gang скорее всего визуально. В логах потоки выше 275-го светятся?



  • @DrPrime да светится. Значит все норм.



  • Но я все же не могу загрузить сервер на полную каушку. Как ставлю больше 300 потоков сервер начинает жестко тупить и все виснет (например на 500 потоках при этом оперативы и проца хватает). Все таки эта инфа http://wiki.bablosoft.com/doku.php?id=ru:what_is_maximum_thread_number походу актуальна.

    Такое же происходит если запускаю 2 копии БАС по 300 потоков, даже жеще, приходится сервер сразу же перезагружать, так как не реагирует на команды с интерфейса рабочего стола.

    Подскажите куда копать чтоб загрузить сервер на полную катушку?


Log in to reply