【问题标题】:Non-blocking ORM for Tornado?Tornado 的非阻塞 ORM?
【发布时间】:2023-03-22 06:10:02
【问题描述】:

除了Twistar之外,还有什么异步Python ORM吗?

我正在寻找构建在 tornado 之上的用于非阻塞 API 的轻量级 ORM。当然,我可以使用 momoko 编写原始 SQL 查询,但我想使用对象。

【问题讨论】:

  • SQLAlchemy + gevent 太过分了。桃子我已经在用了。并在这两者之间寻找解决方案。
  • 我不知道,但实际上我最近正在考虑写一个。也许在redis之上,而不是在任何SQL之上:)
  • 这很好,但我们需要在 sql 之上使用异步 ORM。 :)
  • @NikolayFominyh 到目前为止你有没有发现任何异步 ORM?而且,只是古玩,为什么 Twistar 不适合你?

标签: python database orm tornado


【解决方案1】:

当然可以!查看peeweepeewee-async 扩展名。免责声明:扩展目前仅适用于 PostgreSQL,我是扩展的作者 :)

它不是专门为 Tornado 设计的,但 Tornado 可以在异步事件循环上运行。

【讨论】:

  • 谢谢,有机会去看看! =)
【解决方案2】:

5 年了,发生了很大的变化。我们写了GINO 是在asyncpgSQLAlchemy core 之上的轻量级ORM。它仅适用于 asyncio 和 PostgreSQL。 GINO 称为“GINO 不是 ORM”,因为它几乎没有应用任何常见的 ORM 模式,以便明确和简单。

【讨论】:

  • GINO 1 个月前开始。我会跟随你。如果你能保持节奏 - 明年我们将看到解决龙卷风的好方法。
  • 一年过去了:) @NikolayFominyh
  • 哈,我们正在为 GINO 1.0 分离扩展。很快就会到!此外,还有更多出色的解决方案即将出现:tortoise-orm、encode/databases,仅举几例
【解决方案3】:

看看乌龟ORM

它的目标是成为一个受Django syntax启发的全功能ORM,但仅限asycnio。 由于 Tornado 5.0 在 asyncio 上运行,它应该可以正常工作。

【讨论】:

    【解决方案4】:

    不存在。唯一可以考虑接近轻量级的 ORM 是PeeWee,这不是异步的。 ORM 很难写,更难写。它需要有一个漂亮、干净的 API,公开底层 DB 的许多特性,并且高效。一项艰巨的任务!

    Python 的 ORM 并不多,异步的就更少了。对不起。

    【讨论】:

    • peewee-async 是用于异步接口的 peewee ORM 的包装器,刚才提到了它above
    • 太棒了!很高兴看到一个终于出现了:)
    【解决方案5】:

    如果使用 mongo,您可以查看 Asyncmongo(不是 orm,但让您可以异步访问数据) https://github.com/bitly/asyncmongo

    如果有兴趣,请观看此网络研讨会的视频和幻灯片:“Asynchronous MongoDB with Python and Tornado”http://www.10gen.com/presentations/webinar/Asynchronous-MongoDB-with-Python-and-Tornado

    【讨论】:

    • 抱歉,关于 ORM 的问题。我知道,我们可以以异步方式访问 sql 和 nosql 存储。
    【解决方案6】:

    您可能想看看Monguo,这是一个“功能齐全的异步 MongoDB ORM,带有用于 Tornado 应用程序的电机驱动程序”,正如它所描述的那样。

    【讨论】:

      【解决方案7】:

      你可能想看看 umysqldb(https://github.com/hongqn/umysqldb),一个 MySQLdb 兼容的 Ultramysql 包装器。 ultramysql 通过猴子补丁兼容 gevent。

      【讨论】:

        猜你喜欢
        • 2013-11-12
        • 2021-08-28
        • 2013-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多