Load testing framework made in Ukraine [ukr]
Більшість інженерів рано чи пізно стикаються з необхідністю проводити load testing: перевірити масштабування сервісу, протестувати нову базу даних або зробити performance benchmark для нової технології. І тут виникає питання — який інструмент обрати?
Існуючі рішення добре працюють для HTTP-навантаження, але часто мають обмеження, коли потрібно тестувати інші протоколи, моделювати складні workload-патерни (open vs closed systems, skewed distributions, hot partitions) або запускати distributed load testing у кластері.
У цій доповіді я розповім про NBomber — Load Testing Framework, який я створив для вирішення цих задач. Ми поговоримо про:
- чому виникла ідея створити новий інструмент попри існування Gatling, Locust та k6;
- використання .NET та мови F# для побудови latency-sensitive систем;
- архітектуру NBomber;
- як працює NBomber Cluster;
- кілька практичних кейсів: database benchmarks, anomaly detection, Kubernetes integration, benchmark comparison та аналіз performance trends.