新项目Python 3X PostgreSQL 9X和PG8000 1X DBAPI?
-
02-10-2019 - |
题
我正在开始一些新项目,并想知道PG8000是否被认为是生产项目的好选择?
显然,Python和PostgreSQL是成熟的产品,但是我担心PG8000在成熟和性能方面。我的DB访问会受到影响还是可以接受?
因此,请在回答我的问题时竭尽全力。 PG8000准备好了吗?使用Python DBAPI 2.0规格我会在编写以DB为中心的程序时遇到问题吗?
我一直都知道这样的问题,但是我确实看了看,找不到与PG8000有关的任何目前的问题。显然,考虑到相关技术的发行版,几个月以后的任何答案都不会是目前的。
解决方案
我认为您应该尝试使您的程序驱动程序“独立”。它应该与任何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个以上的驱动程序,我将从示例中更改代码,并使用驱动程序和连接函数创建某种字典。
不隶属于 StackOverflow