Day 45 数据库连接池

数据库连接池

服务器端必须要支持并发访问,这就意味着可能会有很多客户端都要来链接mysql来存取数据,如果只有一条链接就意味着所有客户端只能串行执行,效率太低

mysql的连接本质上也是socket的连接,mysql的服务器支持并发操作

解决方案:

​ 来一个客户端就穿件一条链接,使用完再关闭链接

​ 问题:虽然可以并发,但是可能因为创建链接太多造成服务器崩溃,另外频繁创建和销毁链接消耗cpu资源

数据库连接池:

​ 池就是一个容器

  1. 池的最大连接数

  2. 提供用于获取链接的方法

    如果有现成的就直接返回;如果没有则创建一个新的链接;创建前需要判断当前已创建的连接数是否达到最大限制,如果链接已达到最大限制,则将该函数阻塞知道有一个空余的连接位置,没有达到则创建新的链接

  3. 在内部维护一个容易,用于存储以及创建的连接

web服务器

web服务器需要处理的任务:

  1. 监听端口
  2. 建立链接
  3. 接受请求数据
  4. 调用业务逻辑
  5. 将业务逻辑的返回值发送给客户端
  6. 需要实现并发
posted @ 2019-07-29 16:39  萨萌萌  阅读(89)  评论(0编辑  收藏  举报