Не секрет, что производительность веб-приложения сильно зависит от выбранного фреймворка. Но многих удивит, насколько велика разница. Если вы используете Django, Ruby on Rails и тому подобные фреймворки, то приложение будет примерно в 40 раз медленнее, чем при выборе более быстрого фреймворка. А если вы выбрали Cake PHP, то разница увеличивается ещё на порядок.
Специалисты из компании TechEmpower провели сравнительное тестирование фреймворков, микро-фреймворков и платформ для веб-разработки, сконфигурировав их оптимальным образом, но без использования кэширования, разместив приложение на Amazon EC2 (Core i7, Ubuntu 12.04) и запустив на нём программу для стресс-тестов WeigHTTP. Затем тесты повторили на выделенном сервере.
Вся процедура тестирования с описанием конфигурации каждого фреймворка опубликовано на Github. Если у вас есть замечания и вы заметили ошибку в конфигурации — сообщайте, результаты будут исправлены.
Проведённые тесты:
- Cериализация JSON
- Cериализация JSON на выделенном сервере
- Доступ к БД (запросов в секунду)
- Доступ к БД на выделенном сервере
- Доступ к БД, по 1-20 запросов
- Доступ к БД, по 1-20 запросов, на выделенном сервере
Для примера, вот результаты по сериализации JSON в инстансе на EC2.
Другие тесты можно посмотреть на странице с результатами.
P.S. Вероятно, сравнительное тестировано затеяно с целью продвижения никому не известного фреймворка Gemini производства TechEmpower. Однако, это не влияет на объективность результатов, тем более что тесты проведены прозрачно и являются повторяемыми.