Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Load Testing
  • Начало работы
    • Обзор сервиса
    • Агент
    • Выбор агента
    • Генератор нагрузки
    • Профиль нагрузки
      • Обзор
      • URI
      • URIPOST
      • PHANTOM
      • RAW
      • HTTP_JSON
      • GRPC_JSON
    • Тестирующие потоки
    • Автостоп
    • Resource Check
    • Мониторинг агентов тестирования
    • Отчеты
    • Регрессии нагрузочных тестов
    • Результаты нагрузочного теста
    • Сравнение результатов нагрузочных тестов
    • Артефакты тестирования
    • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

В этой статье:

  • Конфигурирование генераторов нагрузки
  • Примеры использования
  1. Концепции
  2. Тестовые данные и их типы
  3. URI

URI

Статья создана
Yandex Cloud
Улучшена
Dmitry A.
Обновлена 19 февраля 2025 г.
  • Конфигурирование генераторов нагрузки
  • Примеры использования

Тип тестовых данных для описания HTTP-запросов GET. Позволяет задавать разные заголовки для разных запросов, указывать теги для запросов. Используется в генераторах нагрузки Pandora и Phantom.

Тип тестовых данных указывается при создании теста.

Формат данных:

[Header_name: header_value]
uri1
uri2 tag

Заголовки можно добавлять в любом месте файла, они будут применяться для всех URI, указанных после заголовка. Список зацикливается до достижения требуемого количества запросов в секунду.

Конфигурирование генераторов нагрузкиКонфигурирование генераторов нагрузки

Phantom
Pandora

При конфигурировании генератора нагрузки Phantom с помощью yaml-файла можно указать заголовки и эндпоинты запросов для нагрузочного тестирования в самом файле:

phantom:
  address: 203.0.113.1:80
  load_profile:
    load_type: rps
    schedule: line(1, 10, 10m)
  header_http: "1.1"
  headers:
    - "[Host: www.target.example.com]"
    - "[Connection: close]"
  uris:
    - "/uri1"
    - "/buy"
    - "/sdfg?sdf=rwerf"
    - "/sdfbv/swdfvs/ssfsf"

Также заголовки и эндпоинты могут быть вынесены в отдельный текстовый файл. В этом случае укажите в yaml-файле тип uri для параметра ammo_type:

  • Файл конфигурации:
phantom:
  address: 203.0.113.1:80
  load_profile:
    load_type: rps
    schedule: line(1, 10, 10m)
  header_http: "1.1"
  ammo_type: uri
  ammofile: ./ammo.txt
  • Текстовый файл с заголовками и запросами ammo.txt:
[Connection: close]
[Host: target.example.com]
[Cookie: None]
/?drg tag1
/
/buy tag2
[Cookie: test]
/buy/?rt=0&station_to=7&station_from=9

Заголовки, указанные в квадратных скобках, могут переопределять друг друга. Так, в примере выше, последний эндпоинт будет использован с кукой test, в отличие от предыдущих, которые будут использованы без куки.

При конфигурировании генератора нагрузки Pandora с помощью yaml-файла можно указать заголовки и эндпоинты запросов для нагрузочного тестирования в самом файле:

pandora:
enabled: true
package: yandextank.plugins.Pandora
config_content:
   pools:
   - id: HTTP
      gun:
         type: http
         target: 10.128.0.15:80
         ssl: false
      ammo:
         type: uri
         uris:
         - /index
         - /search
         headers:
         - '[Host: my.host]'
         - '[Connection: keep-alive]'
      result:
         type: phout
         destination: ./phout.log
      startup:
         type: once
         times: 1000
      rps:
         - type: line
         from: 1
         to: 1000
         duration: 60s
      discard_overflow: true
   log:
   level: error
   monitoring:
   expvar:
      enabled: true
      port: 1234

Также заголовки и эндпоинты могут быть вынесены в отдельный текстовый файл:

config_content:
   pools:
   - id: HTTP
      ammo:
         type: uri
         file: ./ammo.uri

В этом случае необходимо указать в yaml-файле тип uri для параметра type в секции ammo.
При загрузке файла с тестовыми данными через консоль управления это происходит автоматически.

Примеры использованияПримеры использования

  • HTTPS-тест с постоянной нагрузкой с помощью Phantom
  • HTTPS-тест со ступенчатой нагрузкой с помощью Pandora
  • Сравнение результатов нагрузочных тестов

Была ли статья полезна?

Предыдущая
Обзор
Следующая
URIPOST
Проект Яндекса
© 2025 ООО «Яндекс.Облако»