Подтвердить что ты не робот

Какая настройка более эффективна? Фляга с пипой, или Колба с gevent?

Оба "pypy" и "gevent" должны обеспечивать высокую производительность. Предполагается, что Pypy быстрее, чем CPython, а gevent основан на совместном подпрограмме и greenlets, что, предположительно, делает более быстрый веб-сервер.

Однако они несовместимы друг с другом.

Мне интересно, какая настройка более эффективна (с точки зрения скорости/производительности):

  • Встроенный сервер Flask, работающий на pypy

или

  • Сервер gevent, работающий на CPython
4b9b3361

Ответ 1

Короткий ответ: он быстрее с PyPy, и он имеет более высокий concurrency с gevent.

Можно одновременно использовать gevent и PyPy (мы делаем это в PubNub для нескольких проектов), хотя это может быть сложно. Начиная с PyPy 2.2, требуется несколько исправлений для реализации их сокетов. У нас есть экспериментальная ветвь для github: https://github.com/pubnub/gevent/tree/pypy-hacks - Используется совместно с pypycore.

Наша рекомендация? Используйте Flask с PyPy и gevent. Получите лучшее из обоих миров!

Ответ 2

Встроенный фляжный сервер - это BaseHTTPServer или так никогда не используется. Лучший сценарий - очень вероятный торнадо + пипы или что-то в этом роде. Тест перед использованием. Это также сильно зависит от того, что вы делаете. Тесты веб-сервера + веб-фреймворки, как правило, относятся к мировым стандартам. Действительно ли ваше приложение действительно так?

Приветствия, фиджал

Ответ 3

Pypy совместим с Gevent +1.1 (http://www.gevent.org/changelog.html). Он также совместим с Python 3. Итак, почему бы не использовать оба? Pypy улучшит производительность обработки, а Gevent поможет в связанных задачах ввода-вывода (например, запросы к базе данных, веб-запросы), используя подземные асинхронные соединения.