Бенчмарки: Vapor 2 vs. Vapor 1
После миграции своего пет-проекта с Vapor 1 на Vapor 2 я прогнал бенчмарки, чтобы сравнить производительность. Я не запускал бенчмарки на последней версии ветки 1.x (1.5.15), поэтому буду сравнивать Vapor 2.1.0 с результатами Vapor 1.2.5 из прошлого замера.
Мой сервер:
- 2 ГБ RAM
- 1 ядро CPU
- SSD
- 125 Мбит/с исходящего трафика
- Ubuntu 16.04.2 LTS
- CouchDB
Бенчмарк с другого сервера запускался так:
wrk -t4 -c20 -d5m https://my_url
API просто берёт данные из CouchDB и отдаёт их как JSON. Проект на Vapor собирался Swift 3.1.1.
Всего запросов
Запросов в секунду
Средняя задержка
Использование памяти
Vapor 2 примерно на 14–15% быстрее Vapor 1.2.5. И что важно — потребление памяти Vapor 1.2.5 после бенчмарков выросло с 13,4 МБ до 59,1 МБ, а Vapor 2 стартовал всего с 3,6 МБ и его потребление выросло лишь до 5,3 МБ. Очень впечатляюще.
// ─── EOF ──────────────────────────────────────────────────