🖥 Процессор CPU
1️⃣ Отключите все посторонние процессы на локальной машине, которые не работают в паре с BAS. Полностью отключите антивирус и брандмуэр (позже не забудьте включить вновь). Антивирусом может выступать обычный Windows Defender. Подробнее про Windows Defender в самом конце.
2️⃣ Запустите проект на вашей локальной машине в режиме запуска. Сначала с 1 потоком. Посмотрите загрузку процессора в диспетчере задач. Постепенно увеличивайте количество потоков до тех пор, пока не достигните загрузки процессора не более 85%. Когда подобная нагрузка достигнута – запомните количество потоков, на котором вы остановились.
3️⃣ Откройте сайт https://www.cpubenchmark.net/cpu_list.php#single-cpu Впишите в поиске название своего процессора.
4️⃣ Напротив модели вашего процессора запомните значение из столбца CPU Mark.
5️⃣ Разделите значение CPU Mark на то количество потоков, которое у вас получилось в действии №1. Это число будет показывать сколько “баллов” примерно требуется для работы одному потоку BAS с вашим текущим скриптом.
6️⃣ Выбирая машину, на которой хотите разместить свои проекты – сверяйте процессор со списком на сайте. Делите CPU Mark рассматриваемого процессора на число, полученное в действии 5.
Например, если в действии 5 мы получили число 150, а у рассматриваемого процессора CPU Mark 7500, то 7500/150 = 50.
Примерно на 50 потоков мы можем рассчитывать на рассматриваемом процессоре.
💾 Оперативная память RAM
Замерьте использование оперативной памяти при работе 1 потока, затем при работе 5, 10 потоков. Делите используемую оперативную память на число потоков. Условно, если при 10 потоках потребляется 2.5GB оперативной памяти, то для 1 потока нужно ±250мб. Запас памяти нужен в размере 15-25% от потребляемой. Если у вас есть возможность управлять конфигурацией – необходимо выбирать оперативную память с многоканальным типом подключения, это немного влияет на общую производительность.
💿 Диск
SSD диск необходим(любой), если вы используете больше 50 потоков браузера. Или более 250 потоков запросов. До этого порога он не необходим, но желателен.
🖥 Видеокарта
Видеокарта стала активно использоваться при работе браузера. Однако, это не значит, что вам необходима мощная видеокарта. Достаточно любой затычки с расчётом 1Gb vram на 100 потоков, при условии, что на сайте нет сложных графических анимаций. Если же они имеются и необходимы в работе – потребуется видеокарта мощнее.
Если видеокарты нет – не проблема, всё продолжит работать. Но в таком случае вы можете потерять до 30-50% производительности.
📔 Дополнительная информация
1️⃣ Не стоит запускать более 150 браузерных потоков на 1 машине – БАС начинает вести себя не стабильно. Запуск нескольких копий БАС с небольшим числом потоков не поможет. Если вам необходимо больше потоков в рамках одной машины – используйте виртуальные машины.
2️⃣ Не стоит запускать более 800 потоков http-клиента в рамках одного процесса бас. Бас начинает вести себя нестабильно уже после 500 потоков. Если вам нужно больше потоков – запускайте несколько копий приложения параллельно.
3️⃣ Для чего нужно отключать антивирус? – Антивирус умеет читать команды между приложениями, тем самым затормаживая процесс работы. Иными словами, при включенном антивирусе результаты тестов могут быть искажены. Также это касается и работы приложения впоследствии.
4️⃣ Windows Defender. Многие думают, что на их машине нет антивируса совсем. Это не всегда верно. Зачастую в систему Windows уже вшит антивирус Windows Defender. Отключить его не всегда просто, т.к. даже после “полного отключения” на последних сборках Windows 10, его процесс всё-равно работает, и судя по всему продолжает выполнять свою функцию. Это видно, когда запускается BAS в несколько потоков и помимо BAS пк нагружает процесс Antimalware Service. Постарайтесь полностью избавиться от него.
5️⃣ Не забудьте включить брандмуэр обратно после тестов. Если он не мешает выполнению ваших задач.