前言:
【2w1h】是技术领域中一种非常有效的思考和学习方式,即What、Why和How;坚持【2w1h】,可以快速提升我们的深度思考能力。
今天我们通过【2w1h】方式来讨论“连接池”:什么是连接池(what)?为什么需要连接池(why)?怎样做一个连接池(how)?
什么是连接池?
深入思考连接池的本质,但不要思考的过于复杂!
“池”是一种非常形象化的描述,它是一种容器,做储存之用;在编程中我们往往使用数组、链表、队列、map来表达。
“连接”是网络中用于传输数据的通道;“连接”才是我们要真正去使用的对象,而“池”是用来管理“多个连接”的一种方式。
如果没有用“池”来统一管理“连接”,“连接”将散布在程序各处;那为了使用方便,我们往往会在使用时建立连接,使用完毕后,就关闭连接。所以“连接池”给我们提供了使用“连接”的方便。
同时,池是做储存之用的,所以“连接池”中的“连接”肯定是已经建立好的长连接,比如tcp连接、websocket连接等,即取即用,用完放回。如果没有真正理解“连接池”的本质,在面试中可能会出现“http连接池”的笑话!
根据下游类型,我们常见有数据库连接池、缓存连接池、服务连接池,如下图所示:

本文通过2W1H的方式详细讲解连接池,解释了什么是连接池,为何需要连接池以提高数据传输效率,以及如何实现连接池,包括均衡使用和保活机制。此外,还探讨了高级连接池在微服务中的高可用、可扩展性、负载均衡和中间件功能。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



