首页 新闻 赞助 找找看

Ado.Net 多个客户端会共享一个连接池吗?

0
悬赏园豆:100 [待解决问题]

假设程序只有一个链接:

1、每个客户都在服务端生成一个连接池;

2、只会用一个链接池,因为只有一个连接;

 

有什么方法可以监控吗?

奇鸟的主页 奇鸟 | 初学一级 | 园豆:102
提问于:2017-06-18 16:12
< >
分享
所有回答(4)
0

池还有多个?!——多个和一个没有区别。

就一个连接池,目的是解决内外连接数量能力不对称;

所有次的概念都是如此,比如还有work线程池之类的。

实在要多个池也不是不可以,那么又需要池管理,整个结构会进一步复杂。

花飘水流兮 | 园豆:13560 (专家六级) | 2017-06-18 21:24
0

每个请求需要线程池中的线程去处理(一个客户端也可以同时发N个请求)

Ado.Net 多个客户端会共享一个连接池吗?  是的,应该是IIS只有一个线程池,或者每个网站只有一个线程池

因为线程是系统级别的,所以任何程序都是向系统申请的

但你问多个请求会共享一个线程吗?php jsp asp.net都是用一个线程去处理一个请求的(理论每个线程消耗4M内存)

nodejs,go则可以一个(系统)线程去处理多个请求(所以可以响应更多的请求),

监控:

vs调试

调试 → 窗口 → 线程

iDream | 园豆:121 (初学一级) | 2017-06-19 16:49
-2

你要知道 调试有一个东西叫附加到线程啊

风格不同 | 园豆:14 (初学一级) | 2017-06-23 15:33
0

ado.net 连接池是透明机制 默认开启,对于一个库的默认连接数 是 100个连接

连接池为系统级别 好像是无法监控  但是你可以监控sqlserver

 

附连接:https://msdn.microsoft.com/zh-cn/library/8xx3tyca(v=vs.110).aspx

沐松 | 园豆:208 (菜鸟二级) | 2017-06-26 17:18

收回 上面的连接池是系统级别的 具体类实现是internal sealed class DbConnectionPool

支持(0) 反对(0) 沐松 | 园豆:208 (菜鸟二级) | 2017-06-29 15:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册