在 Python 2/3 中何时使用 pyodbc 以及何时使用 jaydebeapi?

When to use pyodbc and when to use jaydebeapi in Python 2/3?

正如标题所说,简单的问题... 在 Python 2/3?

中何时使用 pyodbc 以及何时使用 jaydebeapi

让我用几个示例场景来详细说明...

  1. 如果我是一名解决方案架构师,并且正在寻找一个 Pyramid Web 服务器,希望访问多种 RDBMS 类型(HSQLDB、Maria、Oracle 等),并期望实现大量并发并需要在单片网络服务器中的延迟性能,将选择哪种范例?为什么?

  2. 如果我要实现一个企业微服务解决方案(a.k.a。新的 SOA),每个微服务访问特定的目标 RDBMS,但每个微服务都有重负载和性能延迟要求,哪个范例会被选中?为什么?

传统上,JDBC 在需要良好并发性的大型企业解决方案中表现得更好。 Python 中是否普遍存在相同的特质?除了上述两种方式,还有其他方式吗?

我是 Python 的新手,所以如果我的问题没有意义,请耐心等待,我会尝试进一步阐述。最好从 high-level 解决方案设计中考虑我的问题,然后作为开发人员从头开始。如果您是 sol-architect,您会要求什么作为范例?

简单回答 - 直到问题给出更多细节:

如果您想使用数据库使用 ODBC:使用 pyodbc 或使用 pypyodbc

的纯 python 解决方案

否则,如果您想与数据库对话 JDBC,请尝试 jaydebeapi

这应该更多地取决于您要在 python 和数据库之间使用的通道,而不是取决于您正在使用的 python 的版本。