1

我正在开始一些新项目,想知道 pg8000 是否被认为是生产项目的好选择?

显然 Python 和 PostgreSQL 是成熟的产品,但我对 pg8000 的成熟度和性能都感到担忧。我的数据库访问会受到影响还是可以接受?

所以,请在回答我的问题时采取一些自由度。pg8000 准备好了吗?在编写以 db 为中心的程序时,使用 Python DBAPI 2.0 规范进行完全访问是否会遇到问题?

我知道一直有人问这样的问题,但我确实看过,但找不到任何与 pg8000 相关的最新信息。显然,考虑到相关技术已发布的版本,几个月后的任何答案都不会是最新的。

4

1 回答 1

0

我认为您应该尝试使您的程序驱动程序“独立”。它应该适用于任何 PostgreSQL DBAPI 2.0 驱动程序。唯一的区别在于导入部分和建立数据库连接。这看起来像:

use_pgdb = 0
try:
    import pgdb
    use_pgdb = 1
except:
    try:
        import psycopg2
    except:
        raise exceptions.ImportError('No PostgreSQL library, install psycopg2 or PyGres!')
if use_pgdb:
    _CONN = pgdb.connect(connect_string)
else:
    _CONN = psycopg2.connect(dsn)

添加到这个驱动程序“链”中,pg8000然后简单地尝试一下。如果所有驱动程序都能正常工作并且性能良好,那么请离开这些驱动程序。如果其中一个驱动程序不起作用或性能不佳,请在代码中对其进行注释并禁用它。对于超过 2 个驱动程序,我将从示例更改代码并创建某种具有驱动程序和连接功能的字典。

于 2010-08-31T06:35:53.197 回答