【发布时间】:2012-04-12 15:20:16
【问题描述】:
我的应用程序有性能问题,所以我开始从根本上调查这个问题:“与数据库的连接”。
最佳实践说:“打开连接,使用它并尽快关闭”,但我不知道这会导致开销,所以问题是:
1 -“尽快打开、使用、关闭连接是使用 ODP.NET 的最佳方法吗?”
2 - 有没有办法以及如何在 ODP.NET 中使用连接池? 我正在考虑创建一个列表来存储一些连接字符串并创建一个逻辑来在每次需要时选择“最佳”连接。这是最好的方法吗?
【问题讨论】:
-
您说的是客户端/服务器应用程序吗?还是三层应用程序?你是说你已经分析了应用程序并确定打开和关闭数据库连接是一个瓶颈吗?还是您只是猜测性能问题可能与数据库有关?
-
这是谁的最佳实践?打开与数据库的连接是一项昂贵且耗时的操作。因此,最好的建议是尽可能长时间地保持连接打开和使用。
-
贾斯汀。是的,它是一个 Asp.Net 应用程序,所以它是客户端/服务器,有 3 层或 4 层,“打开连接操作”不是瓶颈,但我想它会导致性能下降(如果没有正确使用)。
-
APC。根据 Microsoft Ado.Net 团队的说法,这是一种最佳实践。请参阅下面的答案
标签: oracle connection connection-string connection-pooling odp.net