2012-09-19 31 views
0

我想知道什么程度与.NET的TcpClient建立重复的TCP连接可能会影响应用程序的性能。多次重复的TcpClient连接是性能瓶颈吗?

我正在使用的应用程序最初是一个客户端/服务器应用程序,旨在让客户端和服务器位于同一LAN网络上。

我们已经删除了客户端上的ODBC数据库连接,并且正在使用从数据库中读取数据后使用协议缓冲区提供二进制数据的自定义服务器。

我们的代码为每个SQL语句建立一个到服务器的连接,并且序列化结果返回到类似于DataTable的结构中。

在我们公司的网络上,应用程序非常快,但是我们已经开始使用远程客户端进行测试,并且存在延迟问题。我们的服务器位于东海岸,我们的远程客户位于西海岸。

我怀疑打开每个SQL语句的连接的开销实际上是远程客户端的瓶颈,但我不确定这一点。

我的问题:反复打开TCP连接性能瓶颈?持久连接会提高性能吗?如果我们进行持久连接,会出现什么问题?

回答

0

是的。使用连接池。有很多可用的。

+1

.NET上的JDBC连接池? –

+0

@PeterRitchie哎呀!谢谢。 – EJP