我应该使用哪种 JDBC 驱动程序类型来访问 Oracle 数据库?

发布于 2024-10-15 04:44:37 字数 293 浏览 3 评论 0原文

我们正在 AIX 上的 Tomcat Web 服务器内运行 J2EE 应用程序。

我们需要访问 Oracle 数据库的一些视图和存储过程。这个oracle数据库不是我们的应用程序所基于的数据库,而是我们必须与之通信的外部系统。

据我现在所知,在高负载情况下,我们每分钟将获得大约 1000 个 SELECT,每小时将获得一些存储过程调用(如果有的话)。

在这种情况下,哪种 JDBC 驱动程序类型最适合使用?

据我所知,类型 4 似乎是可行的方法,但我还没有找到 Oracle 或其他可靠来源对此的明确声明。

We're running a J2EE Application inside a Tomcat WebServer on AIX.

We need to access a few Views and Stored Procedures of an Oracle Database. This oracle datebase is not the one our application is based on, but an external system we have to communicate with.

As far as I can tell from now, we are going to get around a 1000 SELECTs per minute on high load and a few stored procedure calls per hour, if any.

Which JDBC driver type would be the best to use in this situation?

As far as I have gathered type 4 seems to be the way to go, but I haven't been able to find a definite statement about this by Oracle or some other reliable source.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

南薇 2024-10-22 04:44:37

Type 4(“瘦”)驱动程序是 Oracle 推荐的驱动程序。

使用 OCI(“厚”)驱动程序的唯一原因是当您需要 RAC 的高级功能(例如透明应用程序故障转移 (TAF))时。对于其他一切,建议使用瘦驱动程序。

有关详细信息,请参阅 JDBC 开发人员指南:
http://download.oracle.com/docs /cd/B28359_01/java.111/b31224/overvw.htm#BABCHIGI

最重要的一句话可能是:

一般来说,除非您需要 OCI 特定的功能(例如支持非 TCP/IP 网络),否则请使用 JDBC Thin 驱动程序。

The Type 4 ("thin") driver is the recommended driver by Oracle.

The only reason to use the OCI ("thick") driver is when you need the advanced features of a RAC such as transparent application failover (TAF). For everything else the thin driver is recommended.

See the JDBC Developer's Guide for details:
http://download.oracle.com/docs/cd/B28359_01/java.111/b31224/overvw.htm#BABCHIGI

The most important sentence is probably:

In general, unless you need OCI-specific features, such as support for non-TCP/IP networks, use the JDBC Thin driver.

苏大泽ㄣ 2024-10-22 04:44:37

根据我的经验,我建议使用 Thin 驱动程序。然而,在 3 种情况下,我建议 OCI:

  1. 运行程序的 DB 和 JVM 位于同一主机上。在这种情况下,OCI 将省略 TCP/IP 层,并且通信可能会更快。
  2. 您只需要 Oracle SID 即可连接到数据库,因为使用了完整的客户端。您不需要完整的数据库 URL。这对于开发/测试/生产环境中的配置可能很有用。
  3. 您非常频繁地调用存储过程(我是认真的!)。

From my experience I'd suggest using Thin driver. However there are 3 situations in which I'd advice OCI:

  1. DB and JVM running your program is on the same host. In such case OCI will omit TCP/IP layer and communication might be faster
  2. You need only Oracle SID to connect to DB, since full client is used. You don't need full DB URL. This might be useful in configuration in dev/test/prod environment.
  3. You are calling Stored Procedures very (I mean it!) frequently.
倦话 2024-10-22 04:44:37

类型 4 似乎是可行的方法,但您可以通过优缺点来决定 此处列出。

Type 4 seems to be the way to go but you can decide yourself by going through the pros/cons listed here.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文