面试官:为何数据库连接池未选用IO多路复用技术?我感到困惑。
- 内容介绍
- 文章标签
- 相关推荐
本文共计2018个文字,预计阅读时间需要9分钟。
数据库连接池不使用IO多路复用,是因为IO多路复用主要用于提高对单个资源的并发访问效率,而数据库连接池的核心是管理连接资源。以下是简要的
来源:zhihu.com/question/23084473。今天我们来聊聊一个不常见的Java面试题:为什么数据库连接池不采用IO多路复用?这是一个非常好问题。虽然IO多路复用被视为提升性能的好工具,但它在数据库连接池中的应用却相对较少。
来源:zhihu.com/question/23084473
今天我们聊一个不常见的 Java 面试题:为什么数据库连接池不采用 IO 多路复用?
这是一个非常好的问题。IO多路复用被视为是非常好的性能助力器。但是一般我们在使用 DB 时,还是经常性采用c3p0,tomcat connection pool等技术来与 DB 连接,哪怕整个程序已经变成以Netty为核心。这到底是为什么?
首先纠正一个常见的误解。IO多路复用听上去好像是多个数据可以共享一个IO(socket连接),实际上并非如此。「IO多路复用不是指多个服务共享一个连接,而仅仅是指多个连接的管理可以在同一进程」。在网络服务中,IO多路复用起的作用是「一次性把多个连接的事件通知业务代码处理」。至于这些事件的处理方式,到底是业务代码循环着处理、丢到队列里,还是交给线程池处理,由业务代码决定。
对于使用DB的程序来讲,不管使用多路复用,还是连接池,都要维护一组网络连接,支持并发的查询。
本文共计2018个文字,预计阅读时间需要9分钟。
数据库连接池不使用IO多路复用,是因为IO多路复用主要用于提高对单个资源的并发访问效率,而数据库连接池的核心是管理连接资源。以下是简要的
来源:zhihu.com/question/23084473。今天我们来聊聊一个不常见的Java面试题:为什么数据库连接池不采用IO多路复用?这是一个非常好问题。虽然IO多路复用被视为提升性能的好工具,但它在数据库连接池中的应用却相对较少。
来源:zhihu.com/question/23084473
今天我们聊一个不常见的 Java 面试题:为什么数据库连接池不采用 IO 多路复用?
这是一个非常好的问题。IO多路复用被视为是非常好的性能助力器。但是一般我们在使用 DB 时,还是经常性采用c3p0,tomcat connection pool等技术来与 DB 连接,哪怕整个程序已经变成以Netty为核心。这到底是为什么?
首先纠正一个常见的误解。IO多路复用听上去好像是多个数据可以共享一个IO(socket连接),实际上并非如此。「IO多路复用不是指多个服务共享一个连接,而仅仅是指多个连接的管理可以在同一进程」。在网络服务中,IO多路复用起的作用是「一次性把多个连接的事件通知业务代码处理」。至于这些事件的处理方式,到底是业务代码循环着处理、丢到队列里,还是交给线程池处理,由业务代码决定。
对于使用DB的程序来讲,不管使用多路复用,还是连接池,都要维护一组网络连接,支持并发的查询。

