我有一个直接连接到SQL Server 2005数据库的遗留应用程序WinForms。
有许多客户端应用程序同时打开(几百个),所以我想尽量减少与数据库的连接数。
我可以提前和经常释放连接,并保持超时值低。
我还需要考虑其他事项吗?
答案 0 :(得分:1)
尝试在创建新连接时使用相同的连接字符串,因此.Net将使用一个连接池。
尽快处理您的连接。
您可以在连接字符串本身中设置最大池大小,以确定最大活动连接数。
答案 1 :(得分:0)
您应该考虑引入连接池。 在Java世界中,您通常可以使用应用程序服务器“免费”获取此信息。但是,如果您关心的所有内容都是数据库连接池,那么无论如何都会超大。
一般的想法是让一个进程(在服务器上)打开数据库的有限数量的并行连接。您可以在某种“代理”应用程序(各种迷你应用程序服务器)中执行此操作,并重新使用昂贵的数据库连接来创建与应用程序的传入连接,这些连接可以更便宜地创建和丢弃。
当然这也需要对客户端进行一些更改,所以如果您不能接受这一点作为前提条件,它可能不是理想的解决方案。