mysql tcp 连接池_TCP协议是一对一的,那连接池是如何实现的?

我们假设数据库连接池有三个建立好的链接,分别是socket1,socket2,socket3。我们知道socket是由四元祖唯一确认(client-ip, client-port, server-ip, server-port)。而这里三个socket 的client-ip, server-ip, server-port 是相同的。 变化的是 client-port,也就是说会有三个不同的port。

当应用数据数据库读写操作的时候,会去向数据连接池申请一个可用的链接,我们假设数据库连接池给应用的是socket3。

之后应用就可以拿这个建立好的链接直接和数据库通信了,之后的通信过程,直到销毁链接,不会和数据库连接池发生关系。

因此,你的误解应该在于我讲的最后一点。 数据库连接池虽然和数据库建立了多个明确的链接,但是它可以把链接转给别人。 而 Node 中的 cluster 模块的原理就是如此。

https://nodejs.org/api/cluster.html​nodejs.org

希望我的回答可以帮助到你。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值