vikkyshostak
@vikkyshostak
< This head full of dreams.

REST API. Какой Python-фреймворк выбрать для бэкэнда? Каким пользуетесь вы?

Доброго дня.

Для начала опишу ситуацию: попался на переработку проект (PHP 5.1.х, ~2004 год выпуска), который представляет из себя обычный сервис для заказа экскурсий. То есть, ничего сложного: зарегистрировался на сайте, выбрал услугу, ввёл свои данные и желаемые даты, указал куда и с каким гидом (из каталога, с биографией и фоткой) хочешь пойти, отправил. Заказ ушёл на сервер, сохранился, в личном кабинете отобразился. Короче говоря, обычный функционал, ничего особенного.

Причём тут REST API, спросите вы. Отвечу: сам по себе проект ничем не примечателен, но он позволяет устанавливать специальную форму для заказа (считайте, та же форма, но в iframe) на любые другие сайты (партнёров). Для того, чтобы определять, какому из партнёров присваивать заказ с их формы – в личном кабинете генерируется ключ (MD5 по всем данным учётки), который потом вставляется в скрипт для вызова фрейма.

Так вот, чтобы сделать всё более технологичным, легко расширяемым/поддерживаемым и быстрым (а это вся история изрядно тормозит, особенно в сезон, когда более 300+ сайтов партнёров начинают генерить заказы со своей стороны в единую БД), я и хочу дать ему качественный REST API бэкэнд на одном из Python-фреймворков + PostgreSQL 9.6. Внешнюю часть я уже реализовал на Vue.js.

Итак, мой выбор, пока что, состоит из:
  1. Django (Django REST framework)
  2. Flask
  3. Bottle \ Eve
  4. Falcon

Flask и Bottle – уже использовал для других проектов, но там была не критична организация полноценного REST API, только запросы из фронтэнда и так, по мелочи. Так-то ответ очевиден: бери то, что уже знаешь, но меня сильно путают всякие бэнчмарки производительности и сама простота фреймворка (например, REST API на Eve это пять строк кода и там ничего нет, а у Django – отдельный модуль и куча настроек, но и возможностей и поддержки сообщества – гораздо больше).

Собственно, отсюда и вопрос: что лучше взять?
Может быть вообще можно обойтись гугловым Firebase или подобным сервисом?

Буду рад толковым советам/юзкейсам. Заранее спасибо!
  • Вопрос задан
  • 7573 просмотра
Пригласить эксперта
Ответы на вопрос 6
@Fixid
Для REST понравился Flask
Ответ написан
Комментировать
Я что-то не понял, а что не взять Django и его отличный фреймворк Django-Rest? Стабильная система, работает хорошо и надежно. Зачем придумывать велосипед.
Ответ написан
EvilsInterrupt
@EvilsInterrupt
System programming, Reversing Engineering, C++
Рекомендую посмотреть на aiohttp. Его пилит один из python core-девелоперов у которого руки в правильном месте. Идея использования на основе Flask. Только Flask хоть и адски удобный,но не асинхронный!
Ответ написан
А я вот полюбил cherrypy, который чертовски минималистичен и очень гибок. Он даёт основной каркас, с которым можно сделать очень многое.
Ответ написан
gadfi
@gadfi
https://gamega.org
берите то что лучше знаете
если python то я за flask если нет таких ограничений то я за asp
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы