benchmark: add local WSL test, clarify VM Nubes context
This commit is contained in:
+27
-35
@@ -1,50 +1,42 @@
|
|||||||
# Сравнение производительности: shared-SQS vs Yandex Message Queue
|
# Сравнение производительности: shared-SQS vs Yandex Message Queue
|
||||||
|
|
||||||
Прямое сравнение скорости работы. Оба сервиса тестировались одним и тем же скриптом, с одной VM, в одинаковых условиях.
|
Прямое сравнение скорости работы. Оба сервиса тестировались одним и тем же скриптом, в одинаковых условиях.
|
||||||
|
|
||||||
Дата: 2026-04-12.
|
Дата: 2026-04-12.
|
||||||
|
|
||||||
## Главное
|
## Главное
|
||||||
|
|
||||||
- shared-SQS **в 2–2.5 раза быстрее** Yandex MQ при обычной нагрузке.
|
- shared-SQS показывает результаты на уровне Yandex MQ.
|
||||||
- При экстремальной нагрузке (50 одновременных клиентов) — **одинаково**.
|
- Первый запрос (cold start): shared-SQS стабильно быстрее.
|
||||||
- Первый запрос (cold start): shared-SQS **53 мс**, Yandex MQ **131 мс**.
|
|
||||||
- Поддерживаются все 17 операций AWS SQS API.
|
- Поддерживаются все 17 операций AWS SQS API.
|
||||||
|
|
||||||
## Скорость отправки сообщений
|
## Тест 1: с VM в облаке Nubes
|
||||||
|
|
||||||
Сколько сообщений в секунду может обработать сервис при разном числе одновременных клиентов.
|
Запуск с виртуальной машины в облаке Nubes. shared-SQS находится в том же облаке, Yandex MQ — внешний сервис.
|
||||||
|
|
||||||
| Сценарий | shared-SQS | Yandex MQ | Результат |
|
| Сценарий | shared-SQS | Yandex MQ |
|
||||||
|---|---:|---:|---|
|
|
||||||
| Первый запрос | 53 мс | 131 мс | shared-SQS **в 2.5 раза быстрее** |
|
|
||||||
| 1 клиент, 100 сообщений подряд | **25 сообщ/с** | 11 сообщ/с | shared-SQS **в 2.3 раза быстрее** |
|
|
||||||
| 5 клиентов одновременно | **109 сообщ/с** | 46 сообщ/с | shared-SQS **в 2.4 раза быстрее** |
|
|
||||||
| 10 клиентов одновременно | **166 сообщ/с** | 87 сообщ/с | shared-SQS **в 1.9 раза быстрее** |
|
|
||||||
| 20 клиентов одновременно | **226 сообщ/с** | 139 сообщ/с | shared-SQS **в 1.6 раза быстрее** |
|
|
||||||
| 50 клиентов одновременно | **264 сообщ/с** | 267 сообщ/с | одинаково |
|
|
||||||
|
|
||||||
> Тест: отправка сообщений (SendMessage) через прямой HTTP-запрос с подписью AWS SigV4.
|
|
||||||
> Запускалось с VM в том же датацентре, условия идентичные для обоих провайдеров.
|
|
||||||
|
|
||||||
## Время ответа по операциям
|
|
||||||
|
|
||||||
Среднее время выполнения каждой операции (в миллисекундах).
|
|
||||||
Замерено через прямой HTTP без CLI. Чем меньше — тем лучше.
|
|
||||||
|
|
||||||
| Операция | shared-SQS | Yandex MQ |
|
|
||||||
|---|---:|---:|
|
|---|---:|---:|
|
||||||
| Получить URL очереди | **52 мс** | 646 мс |
|
| Первый запрос | 53 мс | 131 мс |
|
||||||
| Получить атрибуты очереди | **52 мс** | 120 мс |
|
| 1 клиент, 100 сообщений подряд | 25 сообщ/с | 11 сообщ/с |
|
||||||
| Отправить сообщение (1 КБ) | **40 мс** | 94 мс |
|
| 5 клиентов одновременно | 109 сообщ/с | 46 сообщ/с |
|
||||||
| Отправить сообщение (10 КБ) | **43 мс** | 97 мс |
|
| 10 клиентов одновременно | 166 сообщ/с | 87 сообщ/с |
|
||||||
| Отправить сообщение (32 КБ) | **44 мс** | 100 мс |
|
| 20 клиентов одновременно | 226 сообщ/с | 139 сообщ/с |
|
||||||
| Отправить пакет (10 сообщений) | **46 мс** | 103 мс |
|
| 50 клиентов одновременно | 264 сообщ/с | 267 сообщ/с |
|
||||||
| Получить сообщение | **48 мс** | 126 мс |
|
|
||||||
| Удалить сообщение | **42 мс** | 100 мс |
|
|
||||||
| Удалить пакет (10 сообщений) | **53 мс** | 115 мс |
|
|
||||||
| Изменить видимость (пакет 10) | **54 мс** | 109 мс |
|
|
||||||
|
|
||||||
|
## Тест 2: с локальной машины (WSL)
|
||||||
|
|
||||||
|
Запуск с локальной машины через интернет. Оба сервиса — внешние, условия одинаковые.
|
||||||
|
|
||||||
|
| Сценарий | shared-SQS | Yandex MQ |
|
||||||
|
|---|---:|---:|
|
||||||
|
| Первый запрос | 59 мс | 157 мс |
|
||||||
|
| 1 клиент, 100 сообщений подряд | 6 сообщ/с | 5 сообщ/с |
|
||||||
|
| 5 клиентов одновременно | 9 сообщ/с | 14 сообщ/с |
|
||||||
|
| 10 клиентов одновременно | 19 сообщ/с | 24 сообщ/с |
|
||||||
|
| 20 клиентов одновременно | 38 сообщ/с | 29 сообщ/с |
|
||||||
|
| 50 клиентов одновременно | 77 сообщ/с | 81 сообщ/с |
|
||||||
|
|
||||||
|
> Тест: отправка сообщений (SendMessage) через прямой HTTP с подписью AWS SigV4.
|
||||||
|
|
||||||
## Какие операции проверены
|
## Какие операции проверены
|
||||||
|
|
||||||
@@ -59,4 +51,4 @@
|
|||||||
## Итог
|
## Итог
|
||||||
|
|
||||||
shared-SQS — полнофункциональный AWS SQS-совместимый сервис.
|
shared-SQS — полнофункциональный AWS SQS-совместимый сервис.
|
||||||
При обычной нагрузке **быстрее Yandex MQ в 2–2.5 раза**. При экстремальной нагрузке — на одном уровне.
|
Производительность на уровне Yandex MQ при запуске через интернет.
|
||||||
|
|||||||
Reference in New Issue
Block a user