Готово ли Pylons?

Я разработчик, который ищет платформу веб-приложений Enterprise для Python. Моя главная забота - долгосрочная поддержка, обширный набор функций и надежность.

Я экспериментировал с Pylons и после моего ужасающего опыта работы с Ruby on Rails в Windows, где мне даже пришлось скомпилировать свой собственный драйвер Postgres, Pylons и Python были находкой.

Я считаю, что Python, благодаря очень сильному сообществу и коммерческим интересам, определенно "готов к работе" из-за количества доступных библиотек и их усилий по поддержанию некоторого подобия обратной совместимости для Python 3.0. Мое беспокойство:

Можем ли мы сказать то же самое для Pylons 0.97?

С другой стороны, я выяснял, как заставить SQLAlchemy работать с DB2 на Pylons, чтобы я мог автоматизировать основные операции CRUD. Текущий драйвер DB2 на http://code.google.com совершенно бесполезен, только поддерживая SQLAlchemy 0.4. Как вы думаете, IBM взяла на себя обязательства по обеспечению работы DB2 с SQLAlchemy в долгосрочной перспективе? Или вам, ребятам, лучше сделать интерфейс SQLAlchemy с драйвером ODBC, поставляемым с DB2. Любые недостатки по сравнению с использованием драйвера IBM SQLAlchemy?

Ответы

Ответ 1

Когда дело доходит до готового предприятия, я не уверен, что еще более готовый стек с использованием Pylons с SQLAlchemy может быть в мире Python. Вы готовы к массивным старым базам данных с сумасшедшими схемами (полностью распространенными в крупных корпоративных мирах), где Django просто разваливается по швам. Конечно, в Django вы все равно можете использовать SQLAlchemy, но затем все инструменты Django contrib разваливаются, поскольку все они полагаются на предположение, что вы будете делать вещи "Django".

Pylons существует с середины 2005 года, и он никуда не денется. Он на самом деле довольно зрелый и имеет довольно медленный и надежный график выпуска от 6 до 10 месяцев между релизами, с довольно небольшим количеством тестов. Один из основных разработчиков Pylons также является разработчиком Jython, гарантирующим, что Pylons может работать на JVM (что помогает получать приложения на основе Pylons в корпоративных средах, которые враждебно относятся к вещам, которые невозможно упаковать в WAR файл для развертывания).

Что касается некоторых других "ответов" здесь, вопрос заключается в том, готов ли Pylons к работе на предприятии, я не знаю, почему другие не смогли прочитать вопрос и вместо этого решили начать проповедовать свою собственную любимую фреймворк. Глупо говорить, что вы должны использовать Django/Zope/Grok, потому что он имеет "большее поглощение" или "более крупное сообщество", если критерием выбора должен быть PHP, что делает сообщества Django и Zope похожими на битти в сравнении, У пилонов определенно есть достаточно большое сообщество, чтобы поддерживать себя, тем более что его довольно скудная и компактная база кода не поднимает почти столько же ошибок, сколько рамки "кухонной раковины" Zope/Django.

Ответ 2

Я бы сказал, что если вы беспокоитесь о поддержке на уровне предприятия, вы должны больше смотреть на Django. Несмотря на то, что вы можете обсуждать относительные технические достоинства двух структур, нет сомнений в том, что Django имеет большее значение, и есть немало крупных компаний, которые его используют.

Еще одна причина заключается в том, что IBM (всего за последние пару дней) выпустила драйвер Django для DB2, так что вы должны иметь без проблем с использованием вашей существующей базы данных с ORM Django.

Ответ 3

определить готовность предприятия.

Кроме того, если мы говорим о масштабируемости, я бы сказал, что у вас есть лучший снимок с sqlalchemy, поскольку при необходимости вы можете перейти к необработанному sql. Принимая во внимание, что активный шаблон записи, по-видимому, является причиной большого количества высокоуровневых фреймворков, это может привести к проблемам с масштабируемостью, если вы бросаете материал вместе.

Конечно, "предприятие готово" для некоторых людей означает сложный и дорогостоящий, это ваше определение, чем я бы сказал, что никакая веб-инфраструктура python не будет отвечать вашим потребностям.

Ответ 4

Я считаю, что готовое программное обеспечение готово, когда оно имеет стабильность и поддержку.

Я считаю, что Pylons/Python стабилен. Существует загрузка сайтов с использованием Pylons (включая один из сайтов с самым высоким трафиком, reddit.com).

Поддержка мудрая. Я бы рассмотрел такие аспекты, как то, как легко нанимать людей, которые знают Пилоны или приобретать контракты на поддержку. Это немного сложнее. Если вы планируете поддерживать в доме Pylons больше, чем готовы. Если вы ищете поддержку, чтобы у вас был кто-то, кто взял на себя ответственность, когда программное обеспечение ломается, вы можете захотеть посмотреть в другом месте.

Ответ 5

Я бы воспользовался призывом использовать Django. Я на самом деле предпочитаю Pylons, потому что он намного более компактный, чем Django, но, учитывая, что вы указываете "готовность к работе", я думаю, вы можете захотеть хеджировать к более крупной структуре и нести кухонную раковину с собой.

Ответ 6

+1 для Django

Pylons - хорошая структура, но вам нужно будет сопоставить все компоненты для создания собственной архитектуры, поэтому я считаю ее более подходящей для более компактных проектов. Для чего-то большего, я предлагаю Django, которые знают, что они производятся на некоторых крупных сайтах.

Недавно IBM выпустила back-end для Django для DB2, поэтому может быть вам хорошо.

Ответ 7

Если вы хотите, чтобы рамки, которые вряд ли уйдут в ближайшее время, посмотрите на Django и одну из фреймворков сообщества Zope (Grok, BFG, Zope3). Zope имеет большое сообщество и работает уже более десяти лет и не собирается уходить в ближайшее время и является питательной средой для многих новых интересных веб-технологий Python. Django является новее и только недавно появился в версии 1.0, но он имеет очень большое сообщество и также будет оставаться на более или менее навсегда.