Тестування продуктивності etcd v2.2.0
Фізичні машини
Тип машини GCE n1-highcpu-2
- 1x виділений локальний SSD, змонтований як каталог даних etcd
- 1x виділений повільний диск для ОС
- 1.8 ГБ памʼяті
- 2x ЦП
Кластер etcd
3 учасники etcd 2.2.0, кожен працює на окремій машині.
Детальні версії:
etcd Version: 2.2.0
Git SHA: e4561dd
Go Version: go1.5
Go OS/Arch: linux/amd64
Тестування
Запустіть іншу машину, поза кластером etcd, і запустіть інструмент тестування hey
HTTP benchmark tool з патчем для повторного використання зʼєднань, щоб надсилати запити до кожного учасника кластера etcd. Дивіться інструкції з тестування для патча та кроків для відтворення наших процедур.
Продуктивність розраховується на основі результатів 100 раундів тестування.
Продуктивність
Продуктивність читання одного ключа
розмір ключа в байтах | кількість клієнтів | цільовий сервер etcd | середній QPS читання | stddev QPS читання | середня 90-й процентиль затримки (мс) | stddev затримки |
---|---|---|---|---|---|---|
64 | 1 | тільки лідер | 2303 | 200 | 0.49 | 0.06 |
64 | 64 | тільки лідер | 15048 | 685 | 7.60 | 0.46 |
64 | 256 | тільки лідер | 14508 | 434 | 29.76 | 1.05 |
256 | 1 | тільки лідер | 2162 | 214 | 0.52 | 0.06 |
256 | 64 | тільки лідер | 14789 | 792 | 7.69 | 0.48 |
256 | 256 | тільки лідер | 14424 | 512 | 29.92 | 1.42 |
64 | 64 | всі сервери | 45752 | 2048 | 2.47 | 0.14 |
64 | 256 | всі сервери | 46592 | 1273 | 10.14 | 0.59 |
256 | 64 | всі сервери | 45332 | 1847 | 2.48 | 0.12 |
256 | 256 | всі сервери | 46485 | 1340 | 10.18 | 0.74 |
Продуктивність запису одного ключа
розмір ключа в байтах | кількість клієнтів | цільовий сервер etcd | середній QPS запису | stddev QPS запису | середня 90-й процентиль затримки (мс) | stddev затримки |
---|---|---|---|---|---|---|
64 | 1 | тільки лідер | 55 | 4 | 24.51 | 13.26 |
64 | 64 | тільки лідер | 2139 | 125 | 35.23 | 3.40 |
64 | 256 | тільки лідер | 4581 | 581 | 70.53 | 10.22 |
256 | 1 | тільки лідер | 56 | 4 | 22.37 | 4.33 |
256 | 64 | тільки лідер | 2052 | 151 | 36.83 | 4.20 |
256 | 256 | тільки лідер | 4442 | 560 | 71.59 | 10.03 |
64 | 64 | всі сервери | 1625 | 85 | 58.51 | 5.14 |
64 | 256 | всі сервери | 4461 | 298 | 89.47 | 36.48 |
256 | 64 | всі сервери | 1599 | 94 | 60.11 | 6.43 |
256 | 256 | всі сервери | 4315 | 193 | 88.98 | 7.01 |
Зміни продуктивності
Оскільки etcd тепер записує метрики для кожного виклику API, продуктивність QPS читання здається трохи зниженою в більшості сценаріїв. Цей мінімальний вплив на продуктивність був визнаний розумною інвестицією для широти моніторингу та налагодження інформації, що повертається.
Продуктивність QPS запису до лідерів кластера здається трохи збільшеною. Це тому, що основний цикл і цикли застосування записів були розділені в логіці etcd raft, усуваючи кілька блокувань між ними.
Продуктивність QPS запису до всіх учасників здається значно збільшеною, оскільки послідовники тепер отримують останній індекс коміту швидше і швидше застосовують пропозиції.
Відгук
Чи це було корисним?
Раді чути! Будь ласка, повідомте нам, як ми можемо зробити краще.
Дуже шкода це чути. Будь ласка, повідомте нам, як ми можемо зробити краще.