用C#开发 c/s 模式的程序(c#+sqlserver2000),需要用到“连接池”吗?
不好意思,本人初学,对连接池的功能不太理解。有网友说,连接池是放在服务器上的,而不是客户机上的,
这是不是说,只有开发服务器端的程序时,才需要用到连接池,对于桌面程序,没有连接池这一个概念,是这样吗?其实核心就是一个问题,连接池是不是由真正的数据库来管理。
还是由ado.net管理呢
如果连接池由真正的数据库来管理(比如 ms sqlserver 2000),则意味着,连接池就是服务器上的,与客户机没有关系。如果连接池由ado.net来管理,则说明连接池在客户机上,由运行c#的程序的托管程序来管理。不好意思,我的概念不清,请大家指教。

解决方案 »

  1.   


    电脑n           电脑1    电脑2
    客户端(很多个)==>服务端==>数据库
                      连接池客户端多的时候,将SQL连结交给连接池控管
    客户端则透过WebService或.NET Remoting取得数据
    这样可以让服务端的效能跟资源利用较好电脑n            电脑1
    客户端(很多个)==>数据库这样的话,那每个客户都只有一个连线,连接池要用不用都无所谓了
    看你实体层怎么设计吧
      

  2.   


    顶,很多人都误认连接池在server上
      

  3.   

    你的所谓c/s模式的程序
    太狭义了
    程序完全在客户端,服务器端只是一个数据库服务器而已而B/S 或者复杂一点的C/S程序
    都是有服务器端程序的,
    可以是简单的程序,直接放在数据库服务器上的
    但也可以是实现容错与负载均衡的应用程序服务器集群(很多台服务器)