【问题标题】:Is Pylons enterprise-ready? [closed]Pylons 是企业级的吗? [关闭]
【发布时间】:2010-11-05 21:23:30
【问题描述】:

我是一名开发人员,正在寻找适用于 Python 的企业级 Web 应用程序框架。我主要关心的是长期支持、广泛的功能集和可靠性。

我一直在试验 Pylons,在 Windows 上使用 Ruby on Rails 的可怕经历之后,我什至不得不编译自己的 Postgres 驱动程序,Pylons 和 Python 真是天赐之物。

我相信,由于社区和商业利益非常强大,由于可用库的数量以及他们为保持与 Python 3.0 的某种向后兼容性所做的努力,Python 绝对是“企业就绪”的。我担心的是:

我们可以对 Pylons 0.97 说同样的话吗?

顺便说一句,我一直在研究如何让 SQLAlchemy 在 Pylons 上与 DB2 一起工作,以便我可以自动化基本的 CRUD 操作。 http://code.google.com 上的当前 DB2 驱动程序仅支持 SQLAlchemy 0.4 是毫无用处的。您认为 IBM 是否致力于让 DB2 与 SQLAlchemy 长期合作?或者你们觉得最好让 SQLAlchemy 与 DB2 提供的 ODBC 驱动程序接口。与使用 IBM 的 SQLAlchemy 驱动程序相比有什么缺点吗?

【问题讨论】:

  • 哇,伙计们...非常感谢您的回复。请让他们来。将尝试单独回复您的每一个进一步的查询。到目前为止,django 似乎 > pylons,但我特别喜欢 Tom Willis 关于 sqlalchemy 处理原始 sql 等能力的回复。我主要关心的是是否会继续支持 pylons 和 sqlalchemy。但会直接回复tom。再次非常感谢

标签: python web-applications sqlalchemy pylons


【解决方案1】:

我认为软件企业在具有稳定性和支持时已准备就绪。

我相信 Pylons/Python 是稳定的。有大量使用 Pylons 的网站(包括访问量最高的网站之一 reddit.com)。

在支持方面,我会考虑雇佣了解 Pylons 的人或购买支持合同的难易程度等方面。这有点难。如果您计划在内部支持 Pylons,您可以随时使用。如果您正在寻求支持,以便在软件出现故障时有人承担责任,您可能想寻找其他地方。

【讨论】:

  • 嗨,杰夫,非常感谢您的 cmets。我认为 Pylons 有潜力做很多令人惊奇的事情,但是,对于企业来说,长寿是非常非常关键的。因为真正掌握一门语言(Python)和一个框架(Pylons)需要几个月/几年的时间,而且将时间和精力投入到一个不会不断添加新功能以保持领先地位的框架上是不明智的。通过企业就绪,我希望有大量的文档(而不是源代码!)能够让内部团队跟上新技术的步伐。不过我同意 Pylons 很棒。
【解决方案2】:

当谈到企业就绪时,我不确定在 Python 世界中使用 Pylons 和 SQLAlchemy 的堆栈能做好多少准备。您已经准备好使用带有疯狂模式的大量遗留数据库(在大型企业世界中非常常见),而 Django 只是在接缝处分崩离析。当然,在 Django 中,您可以仍然使用 SQLAlchemy,但是所有 Django contrib 工具都分崩离析,因为它们都依赖于您以“Django”方式做事的假设。

Pylons 自 2005 年年中以来一直存在,但它不会去任何地方。它实际上已经相当成熟,并且在发布之间有 6 到 10 个月的相当缓慢而稳定的发布时间表,并进行了大量测试。 Pylons 的核心开发人员之一也是 Jython 的开发人员,确保 Pylons 可以在 JVM 上运行(这有助于将基于 Pylons 的应用程序引入企业环境,这些环境对无法打包到 WAR 文件进行部署的事物具有敌意)。

关于这里的其他一些“答案”,问题是关于 Pylons 是否已为企业做好准备,我不知道为什么其他人无法阅读这个问题,而是选择开始宣传他们自己喜欢的框架。说你应该使用 Django/Zope/Grok 是很愚蠢的,因为它有“更大的吸收”或“更大的社区”,如果这是选择应该是 PHP 的标准,这使得 Django 和 Zope 社区相比之下看起来很小. Pylons 肯定有一个足够大的社区来维持自己,尤其是它相当精简和紧凑的代码库不会像 Zope/Django 的“厨房水槽”框架那样发现那么多的错误。

【讨论】:

  • 你好,本!听到您坦率而明智的答复,我感到非常荣幸。您为出色的框架 Pylons 做了很多工作,我非常感谢。我目前对 Pylons 非常感兴趣,但我非常担心 IBM 对 SQLAlchemy 的 DB2 驱动程序的支持。当 Pylons 0.97 依赖于 SA 0.5 时,它尚未从 SA 0.4 更新到 SA 0.5。我同意你关于“更大的吸收”的观点,但注意到你声称 Pylons“不会去任何地方”,你不同意更大的社区会表示更多的支持吗?
  • 此外,由于缺乏对 Windows 开发人员的支持以及 ruby​​-pg 驱动程序乏善可陈,我从 ROR 转向 Pylons。它占用了我很多时间,让我变得非常沮丧。我必须通过“企业就绪”来澄清我主要关心的是可靠性、对遗留代码的支持和寿命。到目前为止,我对 Pylons 非常满意,这就是这个问题的原因。但我确实希望 IBM 将继续为 DB2 和 Python 提供 SA 支持。
  • 好吧,对于旧版支持,Pylons 目前几乎是旧版 Pylons 的 1/3。在决定早期采用者应该拥有旧版支持之前,我们没有“等待” 1.0。 Pylons 1.0 将在未来 6 个月内发布,它放弃了旧版支持,但同时也会发布包含弃用警告的 Pylons 0.10,以便更顺利地升级到 1.0。关于支持,您可能会比 Pylons 支持更难获得 Python DB2 支持。
【解决方案3】:

定义企业就绪。

另外,如果我们谈论的是可扩展性,我会说您可以更好地使用 sqlalchemy,因为您可以在必要时下拉到原始 sql。虽然活动记录模式似乎是高级框架的许多价值的原因,但如果你把东西放在一起可能会导致可伸缩性问题。

当然,对于某些人来说,“企业就绪”意味着复杂和昂贵,这是你的定义吗,而不是我会说没有 Python Web 框架能够满足你的需求。

【讨论】:

  • 嗨,汤姆,非常感谢您的帮助。通过“企业就绪”,我很抱歉在我的查询中没有足够好地定义它是空洞的。我担心 python 的路线图(我猜这不是一个大问题)、pylons 和 sqlalchemy(我担心用户群可能不足以确保继续使用)我打算使用 SQLAlchemy 来自动化简单的 CRUD 操作,而批量我猜 SQL 将采用存储过程的形式。这适用于我为公司创建的一系列 Intranet 应用程序。所以未来的支持对我决定我的平台至关重要
  • 公平地说,我不知道如何直接解决任何给定 api 的寿命或稳定性的问题。这可能归结为偏好。对我来说,如果我能理解正在发生的魔法,那我就可以支持它。我永远无法完全理解 Rails 中到底发生了什么,因此我经常最终与框架抗争,而不是它对我的帮助。只是我的 .02
【解决方案4】:

我想说,如果您担心“企业级”支持,您应该更多地关注 Django。尽管您可以讨论这两个框架的相对技术优势,但毫无疑问,Django 的使用率更高,并且有不少大公司在使用它。

另一个原因是 IBM(就在最近几天)发布了 Django driver for DB2,因此您应该可以将现有数据库与 Django ORM 一起使用。

【讨论】:

  • 感谢您分享 IBM 的 Django 驱动程序。我已经与 IBM 的一位开发人员讨论了 SQLAlchemy 的 DB2 驱动程序,显然,它将在下周完成。我希望最好的驱动程序将准备好生产。
【解决方案5】:

如果您想要不太可能很快消失的框架,请查看 Django 和 Zope 社区中的框架之一(Grok、BFG、Zope3)。 Zope 拥有一个庞大的社区,并且已经存在了十多年,并且不会很快消失,并且是许多新的酷 Python Web 技术的温床。 Django 较新,最近才出现在 1.0 版中,但它有一个非常大的社区,并且也将或多或少地永远存在。

【讨论】:

  • 非常感谢,伦纳特。我想我会阅读 Zope 的!虽然我不知道 Django 有如此压倒性的支持
  • 是的,Django 在 Stackoverflow 上很强大。 :)
【解决方案6】:

为 Django +1

Pylons 是一个很好的框架,但您必须匹配所有组件才能创建自己的架构,所以我认为它更适合更精简的项目。对于更大的东西,我建议使用 Django,它已经在一些大型网站上投入生产。

IBM recently released a DB2 back-end for Django,所以可能很适合你。

【讨论】:

    【解决方案7】:

    我愿意支持使用 Django。我实际上更喜欢 Pylons,因为它比 Django 精简得多,但考虑到您指定“企业就绪”,我认为您可能想要对冲更大的框架并随身携带厨房水槽。

    【讨论】:

    • 一个“厨房水槽”框架,至少 w.r.t.控制器/视图组合(如身份验证、发布 cmets)正是您想要用于大型项目的。堆积预先打包的组件意味着您将拥有一个笨重的应用程序,其中没有一个组件完全按照您的需要执行或完全按照您的需要执行。如果您真的想要“开箱即用”,那么有很多提供博客、cmets 的 Web 服务,但您也不使用它们,对吧?透明胶带太多,诚实的架构不够。
    • Hrm,刚刚注意到您可以升级 cmets,这很好,因为这值得拥有。你有一个很好的观点。
    猜你喜欢
    • 2011-02-17
    • 2010-11-02
    • 2012-02-04
    • 2010-10-17
    • 2016-09-05
    • 2011-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多