Я использую python, потому что это простой и мощный язык, но он никогда не использовался для достижения превосходства в производительности (но для python сеть очень хорошо работает)! Я знаю, что эталонный тест, основанный на «Hello World», не может сказать слишком много, но, интересно, мы знаем, какая технология (фреймворк) дает больше времени для ответа на запрос веб-поддержки о производительности.

Существует фреймворк Python под названием Falcon (Falcon следует архитектурному стилю REST, что означает (среди прочего) то, что вы думаете с точки зрения ресурсов и переходов между состояниями, которые отображаются на HTTP-глаголы), что обеспечивает чрезвычайно высокую производительность даже при использовании асинхронной обработки резервного копирования. библиотека (как gevent, это сетевая библиотека Python на основе сопрограмм, которая использует greenlet для предоставления высокоуровневого асинхронного API поверх цикла событий libev).

В эти дни я прокомментировал в социальной сети производительность сокола, и некоторые люди отметили, что было бы интересно провести тест с Go, и здесь я пишу сообщение в блоге о производительности веб-сервера, написанного на Go и Python, чтобы увидеть который отвечает больше запросов в секунду!

Пойдем…

Приложение Falcon

Приложение Go

Контрольный показатель

Использовал:

Сокол

Запросы в секунду: 4888,35 за 2,046 секунды

Go

Запросы в секунду: 15711,36 за 0,636 секунды

Мы можем позволить Go more performer (компилировать софт), следим за результатом после компиляции:

Запросы в секунду: 20978,30 за 0,415 секунды

Вывод

Да, Go обеспечивает гораздо большую производительность, чем Python в веб-запросах, и почему я прекращаю программировать на Python. Сегодня у нас очень большая экосистема в мире Python, где Python очень мощный (и хороший), примером являются математические библиотеки, такие как numpy, pandas и т. Д.

Этот пост в блоге показывает, что Python (или другие технологии, которые вам нужны) - не серебряная пуля (решение всех проблем). Выберите правильную технологию для вашей задачи, не все гвозди, используйте молоток!

Первоначально опубликовано на / 2015/01 / go-vs-python-more-request-per-second 17 января 2015 г.