1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/vipshop-vdl

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
vdl_test.md 7.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 01.12.2024 08:47 1556aaf

VDL тестирование производительности «точка-точка»

1. Тестирование

1.1 Цель тестирования

Тестирование направлено на оценку показателей производительности VDL «точка-точка»:

  • запись данных по отдельности;
  • чтение данных по отдельности;
  • смешанное чтение и запись при различных условиях, включая чтение и запись с точки зрения производительности;
  • влияние размера пакета и размера буфера приёма на производительность чтения и записи.

Показатели производительности включают:

  • TPS (количество транзакций в секунду);
  • Latency (задержка) — четыре показателя: Avg (среднее значение), 95th (95-й процентиль), 99th (99-й процентиль) и max (максимальное значение). Для расчёта задержки в пакетном запросе используется следующая формула: Tn — время, затраченное на отправку N сообщений, rtt — задержка между отправкой сообщения на стороне записи и получением его сервером VDL.
  • Throughput (пропускная способность).

Инструменты тестирования:

  • produce — тестирование с помощью написания программы для тестирования производительности (код находится в tools/vdl_perf/produce_perf/produce_perf.go).
  • consume — поскольку VDL не реализует протокол группового потребления, он не совместим с официальным скриптом тестирования производительности kafka: kafka-consumer-perf-test.sh. Тестирование проводится с помощью написания программы тестирования производительности (код расположен в tools/vdl_perf/consume_perf/consume_perf.go).

2. Среда тестирования

2.1 Конфигурация сервера

Конфигурация кластера серверов VDL:

a) Leader: * IP: 192.168.0.1; * CPU: 32 ядра Intel(R) Xeon(R) CPU E5-2620 v4 @ 2,10 ГГц; * Mem: 32 ГБ; * Диск: SATA 512 ГБ; * Сетевая карта: 1000 Мбит/с. b) Follower1: * IP: 192.168.0.2; * CPU: 32 ядра Intel(R) Xeon(R) CPU E5-2620 v4 @ 2,10 ГГц; * Mem: 32 ГБ; * Диск: SATA 512 ГБ; * Сетевая карта: 1000 Мбит/с. c) Follower2: * IP: 192.168.0.3; * CPU: 32 ядра Intel(R) Xeon(R) CPU E5-2620 v4 @ 2,10 ГГц; * Mem: 32 ГБ; * Диск: SATA 512 ГБ; * Сетевая карта: 1000 Мбит/с.

Конфигурация клиентских серверов для чтения и записи:

а) Сервер для чтения: * IP: 192.168.0.2; * CPU: 32 ядра Intel(R) Xeon(R) CPU E5-2620 v4 @ 2,10 ГГц; * Mem: 32 ГБ; * Диск: SATA 512 ГБ; * Сетевая карта: 1000 Мбит/с. б) Сервер для записи: * IP: 192.168.0.3; * CPU: 32 ядра Intel(R) Xeon(R) CPU E5-2620 v4 @ 2,10 ГГц; * Mem: 32 ГБ; * Диск: SATA 512 ГБ; * Сетевая карта: 1000 Мбит/с.

2.2 Топология сети

Поскольку имеется только три машины, серверы для чтения и записи развёрнуты на машинах Follower.

3. Сценарии тестирования и результаты

3.1 Тестирование записи

В случае только записи размер сообщения делится на четыре типа: 100 байт, 500 байт, 1024 байта и 4096 байт. Производительность VDL оценивается путём изменения количества сообщений в каждом пакете. Общее количество сообщений составляет 1 миллион, а режим отправки — синхронный. Количество пакетов варьируется от 1 до 50. Результаты тестирования приведены в таблице ниже.

Для сообщений размером 100 байт данные о производительности следующие:

Показатель производительности Размер пакета TPS Latency Throughput
1 2467,52 Avg: 0,041 мс 95th: 0,46 мс 99th: 0,57 мс
10 7481,23 Avg: 0,16 мс 95th: 0,17 мс 99th: 0,18 мс
25 13759,55 Avg: 0,10 мс 95th: 0,11 мс 99th: 0,12 мс
50 18524,29 Avg: 0,08 мс 95th: 0,09 мс 99th: 0,10 мс

Таблица 1: Данные о производительности для сообщений размером 100 байт

Для сообщений размером 500 байт данные о производительности следующие:

Показатель производительности Размер пакета TPS Latency Throughput
1 2272,75 Avg: 0,44 мс 95th: 0,49 мс 99th: 0,61 мс
10 6779,02 Avg: 0,17 мс 95th: 0,18 мс 99th: 0,21 мс
25 11662,81 Avg: 0,11 мс 95th: 0,12 мс 99th: 0,25 мс
50 16377,21 Avg: 0,09 мс 95th: 0,10 мс 99th: 0,22 мс

Таблица 2: Данные о производительности для сообщений размером 500 байт

Для сообщений размером 1024 байт данные о производительности следующие:

Показатель производительности Размер пакета TPS Latency Throughput
1 2192,89 Avg: 0,46 мс 95th: 0,49 мс 99th: 0,63 мс
10 5151,39 Avg: 0,22 мс 95th: 0,23 мс 99th: 0,37 мс
25 10131,88 Avg: 0,13 мс 95th: 0,13 мс 99th: 0,32 мс
50 13989,55 Avg: 0,10 мс 95th: 0,11 мс 99th: 0,25 мс

Таблица 3: Данные о производительности для сообщений размером 1024 байт

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/vipshop-vdl.git
git@api.gitlife.ru:oschina-mirror/vipshop-vdl.git
oschina-mirror
vipshop-vdl
vipshop-vdl
master