Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net ODBC连接池_.net_Database_Odbc_Connection - Fatal编程技术网

.net ODBC连接池

.net ODBC连接池,.net,database,odbc,connection,.net,Database,Odbc,Connection,我从一位开发人员那里继承了一套.NETC#应用程序,该程序与unix服务器上的Informix数据库进行通信 与使用管理数据库连接的常规做法(一次性模式/“延迟打开/提前关闭”)不同,代码似乎在每个应用程序加载时打开一个ODBC连接,而不是关闭它 有没有办法知道有多少ODBC连接是打开的 我试图用.NET最佳实践来重构应用程序中的代码,但我遇到了阻力,因为当前的代码可以正常工作 您可以在ODBC管理员中启用ODBC跟踪,启动应用程序,然后应用程序将打开请求的池ODBC连接。编辑ODBC跟踪文件,

我从一位开发人员那里继承了一套.NETC#应用程序,该程序与unix服务器上的Informix数据库进行通信

与使用管理数据库连接的常规做法(一次性模式/“延迟打开/提前关闭”)不同,代码似乎在每个应用程序加载时打开一个ODBC连接,而不是关闭它

有没有办法知道有多少ODBC连接是打开的


我试图用.NET最佳实践来重构应用程序中的代码,但我遇到了阻力,因为当前的代码可以正常工作

您可以在ODBC管理员中启用ODBC跟踪,启动应用程序,然后应用程序将打开请求的池ODBC连接。编辑ODBC跟踪文件,并输入SQLConnect或SQLDriverConnection调用的数量,以给出应用程序进行的ODBC连接总数。SQLDisconnect的任何出现都表明连接已关闭,这应该是连接总数的一部分…

“但我遇到了阻力,因为当前代码有效。”

+1对于给予抵抗的人

如果所需的功能确实得到了适当的支持,而且没有任何性能问题,那么就不会有任何问题,如果没有任何问题,就不需要修复任何问题

我见过太多的编码雅皮士把工作系统搞砸了,因为他们认为他们知道一种“更好”的方式来组织代码


如果您确信您组织代码的方式(您所谓的“最佳实践”)与在现有系统中应用的方式相比有任何好处,请通过在新项目中应用它来证明这一点。如果确实有明显的好处,那么相信我,用户会注意到的。如果没有,那么您已经学到了一个非常重要的一课,即“哪种编码方式最好”并不重要。

。当连接未使用时,NET framework使用连接池。但连接在启动时打开,在结束时关闭。所以,池不能有效。使用什么ODBC驱动程序?根据ODBC驱动程序的类型,池的工作方式可能会有所不同。当我说当前的代码工作时,这个项目正在进行中,而且产品还没有发布给用户。由于现有代码库的设计/实现方式,路线图中的新特性越来越难以实现。我想重构代码的原因是为了使代码更易于维护,并使我们能够引入单元测试,因为我相信这将在将来为我们节省时间和金钱。谢谢你的咆哮…谢谢。我这样做了,并且能够看到同时打开一些应用程序,在我自己的机器上有超过25个连接保持打开状态。