# Навантажувальне тестування реальними браузерами на вашому сайті

> Навантажувальне тестування свого сайту реальними браузерами, які виконують скрипти: приклад налаштування, що дивитися на сервері і коли потрібен k6 або JMeter.

Генератор запитів надсилає запити; реальний браузер ще завантажує скрипти, зображення, шрифти і сторонні теги та викликає ваші API так, як це робить фронтенд. Генератор трафіку дає таке навантаження на ваш сайт в обсязі й у години, які ви обираєте, щоб ви бачили сервер, CDN і базу даних до приходу справжніх відвідувачів.

Спрямовуйте навантаження лише на сайти, якими ви володієте або на тестування яких маєте письмовий дозвіл. Умови використання забороняють перевантажувати за допомогою YOOtraffic чужі сайти.

## Що показує браузерне навантаження

### Навантаження від усієї сторінки

01

- Генератор запитів вимірює, як швидко сервер відповідає на URL. Браузерна сесія ще завантажує всі ресурси, виконує JavaScript сторінки, викликає API, до яких звертається фронтенд, і запускає кожен сторонній тег, тому перевіряє правила кешування, CDN і скрипти, а не лише сервер.
- Це добра перевірка нового релізу, переїзду на новий хостинг чи CDN або шаблону, до якого додали важкі скрипти, з тим набором пристроїв і браузерів, який є у ваших відвідувачів.

### Чого воно не замінює

02

- Генератор трафіку задає, скільки сесій прийде за день і в які години, а не точне зростання запитів за секунду. Для стрес-тесту до відмови або точної кривої одночасних з'єднань використовуйте поруч протокольний інструмент, наприклад k6, JMeter або Locust.
- Робочий поділ: протокольний інструмент знаходить стелю кожного ендпоінта, а браузерні сесії показують, як тримається вся сторінка за того трафіку, на який ви реально очікуєте.

### Лише на своєму сайті

03

- Спрямовуйте навантаження лише на сайт, яким ви володієте або на тестування якого маєте письмовий дозвіл, і перевірте, чи не вимагає хостинг попереджати його про навантажувальний тест. Умови використання забороняють перевантажувати через сервіс будь-які чужі сайти.
- Починайте помітно нижче рівня, який вас турбує, і підвищуйте його між прогонами, щоб проблема проявилася трендом на графіках, а не відмовою сайту.

## Приклад: репетиція запуску

Магазин переїжджає на новий хостинг перед сезонним розпродажем і хоче побачити, як нова конфігурація витримає завантажений вечір. Репетиція проганяє стиснуту версію такого вечора на новому хостингу при відкритому моніторингу магазину.

Налаштування кампанії

### Цільовий URL

Головна сторінка на новому хостингу, з переходами до категорій і карток товарів

### Обсяг і розклад

2 000 сесій за 2 години, близько 17 нових сесій за хвилину

### Тривалість сесії

Від 180 до 300 секунд

### Глибина перегляду

4 сторінки за сесію, усього близько 8 000 завантажень сторінок

### Пристрої

Частка мобільних і десктопів, яку аналітика показує для магазину

### Країна

Країна, на яку розрахований розпродаж

### Джерело трафіку

Пряме, щоб прогін було легко відокремити від кампаній в аналітиці

Що дивитися під час прогону

- Час відповіді за шляхами в лог-файлі доступу, наприклад поле часу запиту в nginx, за медіаною і для найповільніших 5 відсотків
- Частку відповідей 5xx і таймаутів за шляхами
- Частку влучань у кеш CDN: сторінка, яка мала б кешуватися, але щоразу доходить до сервера, видна тут першою
- Процесор, пам'ять і відкриті з'єднання на сервері та в базі даних, а також лог повільних запитів
- Помилки сторонніх скриптів і API-викликів, які робить фронтенд

Вартість репетиції: діапазон від 180 до 300 секунд оплачується по $0.0024 за сесію (середнє цін найкоротшої і найдовшої сесії діапазону), тому 2 000 сесій коштують $4.80.

## Як провести навантажувальну репетицію

### Зафіксуйте базову лінію

До першого прогону запишіть час відповіді, частку помилок і використання ресурсів за звичайного трафіку в ті самі години.

### Почніть із частини навантаження

Першу партію запустіть на частку від цільового обсягу, подивіться графіки і підвищте обсяг для наступного прогону. Між прогонами змінюйте щось одне: обсяг, години або охоплені сторінки.

### Спостерігайте і зупиняйте за потреби

Тримайте дашборди відкритими, поки йде прогін. Кампанію можна призупинити в будь-який момент, і час паузи нічого не коштує.

### Порівняйте з базовою лінією

Зіставте кожну метрику прогону з базовою лінією. Результат репетиції в тому, що деградує першим і за якого обсягу.

## Що покриває браузерне навантаження і де потрібен протокольний інструмент

- Дає повні завантаження сторінок на ваш власний сайт: ресурси, скрипти, API-виклики і сторонні теги, з реальних браузерів
- Дозволяє задати денний обсяг, години, набір пристроїв і шляхи та повторити той самий прогін після виправлення
- Показує у вашому власному моніторингу, як поводяться сервер, CDN і база даних за очікуваного трафіку

- Не дає точного зростання запитів за секунду і стрес-тесту до відмови: для цього потрібен протокольний інструмент
- Не тестує сайти, якими ви не володієте або на тестування яких не маєте дозволу: умови забороняють перевантажувати чужі сайти
- Не перевіряє вхід і оформлення замовлення: сесії не авторизуються, не заповнюють форми і не платять

## Інструмент у цьому прикладі

Сесії дає Генератор трафіку з оплатою за сесію за ставкою, яка залежить від заданої тривалості сесії. Повна таблиця ставок на сторінці цін.

## Питання про навантажувальне тестування

### Чи можна навантажити тестову копію сайту?

Так, якщо браузери можуть до неї дістатися: адреса має бути доступна публічно, і сесії відкривають її так само, як будь-який відвідувач. Тестова копія з окремим ресурсом аналітики до того ж не потрапляє в робочі звіти.

### Скільки сесій можна надіслати?

Денного ліміту немає: ви задаєте обсяг на день і години, в які він іде.

### Чи буде прогін видно в аналітиці?

Так. Сесії виконують тег аналітики, як будь-яке завантаження сторінки, тому вони враховуються. Якщо джерело пряме, а години прогону записано, сплеск легко відфільтрувати у звітах пізніше.

### Чому не обійтися лише k6 або JMeter?

Щоб знайти стелю ендпоінта, вони підходять краще. Але більшість протокольних інструментів не виконують JavaScript сторінки і не вантажать сторонні теги, а браузерний режим деяких із них на великому обсязі потребує власних серверів або платного хмарного тарифу. Браузерні сесії закривають цю прогалину за очікуваного трафіку.

---

- HTML version of this page: https://yootraffic.com/uk/use-cases/load-testing
- Site index for agents: https://yootraffic.com/llms.txt
- Sitemap: https://yootraffic.com/sitemap.xml
