一. 短连接
短连接是指程序和数据库通信时需要建立连接,执行操作后,连接关闭。短连接简单来说就是每一次操作数据库,都要打 开和关闭数据库连接.
基本步骤是:连接→数据传输→关闭连接。
二. 长连接
长连接是指程序之间的连接在建立之后,就一直打开,被后续程序重用。使用长连接的初衷是减少连接的开销
从客户端的角度来说,使用长连接有一个好处,可以不用每次创建新连接,若客户端对MySQL服务器的连接请求很频繁, 永久连接将更加高效。对于高并发业务,如果可能会碰到连接的冲击,推荐使用长连接或连接池
从服务器的角度来看,情况则略有不同,它可以节省创建连接的开销,但维持连接也是需要内存的。
如果客户端和MySQL数据库之间有连接池或Proxy代理,一般在客户端推荐使用短连接
对于长连接的使用一定要慎重,不可滥用。如果没有每秒几百、上千的新连接请求,就不一定需要长连接,也无法从长连 接中得到太多好处。
三. 连接池
数据库连接池是一些网络代理服务或应用服务器实现的特性
这个连接池将被所有连接的客户端共享使用,连接池可以加速连接,也可以减少数据库连接,降低数据库 服务器的负载。
三. 长连接和连接池的区别
-
长连接是一些驱动、驱动框架、ORM工具的特性,由驱动来保持连接句柄的打开,以便后续的数据库操作可以重用连接,从而减少数据库的连接开销
-
而连接池是应用服务器的组件,它可以通过参数来配置连接数、连接检测、连接的生命周期等