Как оптимизировать работу в многопотоке?
-
@out благодарствую!
-
Ребята я в шоке!!! С перезагрузкой процесса БАС лупит как бешеный, производительность в сравнении с Зенкой в разы выше!!! Тот же шаблон запустил на 300 потоков с перезагрузкой процесса в настройках. Жрет всего 10 гигов операивы и 20% проца.
Это капец!!! Я доволен как слон!!!
Но у меня стоит задача максимум. Максимально масштабировать обьемы. Подскажите пожалуйста, если я поставлю например 500 потоков, будут ли они все корректно работать? Так как мощностей сервера вполне хватает.
Да я читал что БАС максимум тянет 300 потоков, но вдруг что поменялось с новыми версиями?
Или, может быть, есть вариант запускать несколько копий БАС параллельно на одном сервере?
Мне бы сервер загрузить минимум 60-70 % мощностей. Оперативы 64 гига, проц 2 ядра по 2.7
-
@Gang said in Как оптимизировать работу в многопотоке?:
Или, может быть, есть вариант запускать несколько копий БАС параллельно на одном сервере?
сделал так, правда 100 лишнимхмегабайт озу за еще одну копию, но это погоду не портит)
-
@artihorror Спасибо попробую! А вы используете 1 файл шаблона на все копии БАСа? Или под каждую делаете свою копию шаблона со всеми привязаными файлами в ресурсах?
Интересует если использовать один и тот же файл шаблона со всеми привязанными ресурсами к нему, не будет ли конфликта в обработке файлов?
-
Да я читал что БАС максимум тянет 300 потоков, но вдруг что поменялось с новыми версиями?
Количество потоков на 1 копию БАС ограничено приблизительно 2000. 500 можете смело пробовать.
-
Спасибо попробую! Я установил 2 копии БАСа, запустил каждую на 300 потоков и сервер сразу же завис и перестал отвечать на команды((
-
Поставил 500 потоков. Но визуально наблюдаю только 276. Это только визуально они на главое окно не поместились, или нужно где-то снять ограничения?
-
@Gang скорее всего визуально. В логах потоки выше 275-го светятся?
-
@DrPrime да светится. Значит все норм.
-
Но я все же не могу загрузить сервер на полную каушку. Как ставлю больше 300 потоков сервер начинает жестко тупить и все виснет (например на 500 потоках при этом оперативы и проца хватает). Все таки эта инфа http://wiki.bablosoft.com/doku.php?id=ru:what_is_maximum_thread_number походу актуальна.
Такое же происходит если запускаю 2 копии БАС по 300 потоков, даже жеще, приходится сервер сразу же перезагружать, так как не реагирует на команды с интерфейса рабочего стола.
Подскажите куда копать чтоб загрузить сервер на полную катушку?
-
@Gang said in Как оптимизировать работу в многопотоке?:
больше 300 потоков сервер начинает жестко тупить и все виснет (например на 500 потоках при этом оперативы и проца хватает)
Если сервер виснет, значит проца не хватает. Нагрузку на проц можно уменьшить перезапуская процесс реже, не каждый раз а раз в 10 перезапусков потока например.
-
@support А где задать эту настройку количества перезапуска выставлять? У меня в настройках просто стоит галочка "Перезапускать процесс в начале работы потока" И все. Дополнительных настроек я не вижу
-
@Gang По умолчанию это значение равно 100, в настройки не вынесено. Но можно реализовать самому с помощью глобальных переменных.
-
@Gang Несколько человек говорили что набор памяти сильно увеличивается без перезапусков, поэтому я уменьшу это значение до 10 в сл версии.
-
По умолчанию это значение равно 100, в настройки не вынесено. Но можно реализовать самому с помощью глобальных переменных.
@support А шаблон с примерчиком можно? Врядли я осилю сам такое сделать)
-
@support Та же проблема, буду рад когда уменьшите)
-
@Gang
Вот так должен выглядеть код.IF глобальная переменная для этого потока > 10 Перезапустить поток установить глобальную переменную в 0 ... Работа потока ... увеличить глобальную переменную на 1
-
Никак не получается перезагрузить поток через глобальную переменную. Кидаю свой файл шаблона. Помогите пожалуйста. 0_1489215156543_test_potok.xml
-
а подскажите, что дает галка "перезапуск процеса"
скрипт такой:
авторизовались на сайте и потом аккчерез FOR выполняет 500 действий и заканчиваеться поток (куки не сохраняю)
есть ли смысел ставить галку перезапуск процеса и как она вобще работает?
-
@iptips said in Как оптимизировать работу в многопотоке?:
а подскажите, что дает галка "перезапуск процеса"
скрипт такой:
авторизовались на сайте и потом аккчерез FOR выполняет 500 действий и заканчиваеться поток (куки не сохраняю)
есть ли смысел ставить галку перезапуск процесса и как она вобще работает?Например ставим 100 потоков. Запускается 100 процессоров worker.exe И они висят в оперативе все время работы проги. Если не перезапускать процессы, они со временем растут и забивают оперативу. Нужно их перезапускать. Но если перезапускать слишком часто идет нагрузка на процессор.