数据库连接池和java servlet

数据库 连接池 java servlet

  1. 连接池是一个"限流器",设小了限死性能,设大了可能拖垮数据库

  2. 线程池决定"请求并发",连接池决定"数据库并发"

  3. 线程池和连接池都在"应用侧",不是数据库侧

  4. 一个线程在执行SQL时,会占用一个连接,用完之后,连接会归还连接池

  5. 举个例子:

线程A → 拿连接1 → 执行SQL → 归还

线程B → 拿连接1 → 执行SQL → 归还

  1. 连接池是你这个服务的一部分,不是数据库的一部分

  2. 线程池负责"处理请求",连接池负责"访问数据库"

  3. 数据库本身只负责接受连接和执行SQL,不负责连接池管理。

  1. 浏览器 → Tomcat → Spring Boot应用 → 返回结果

  2. Tomcat:负责"网络层"(HTTP),Spring Boot:负责"业务逻辑"

  3. Spring Boot 不依赖 Tomcat,只是默认用它

  4. 应用需要部署到外部 Tomcat 上运行,而 Spring Boot 默认采用内嵌 Tomcat 的方式,将 Web 服务器和应用打包在一起,通过一个 jar 包即可运行。Tomcat 负责接收和处理 HTTP 请求,并将请求转发给 Spring Boot 应用中的 Controller 处理业务逻辑。

  1. Servlet 容器是用于运行和管理 Servlet 的运行环境,它负责接收 HTTP 请求,将请求转换为 Java 对象,分发给对应的 Servlet 处理,并将处理结果返回给客户端。同时它还负责 Servlet 的生命周期管理、线程调度等。常见的 Servlet 容器有 Tomcat。Spring Boot 应用通常运行在内嵌的 Servlet 容器中。

  2. Servlet 容器本质上是"HTTP协议和Java业务代码之间的桥梁"。

相关推荐
名字还没想好☜8 小时前
Python f-string 进阶:数字格式化、对齐填充、调试 = 号与嵌套表达式
开发语言·数据库·python·字符串格式化·f-string
ltl8 小时前
Serverless 数据库弹性理论:Neon 与 Aurora Serverless v2
数据库
·薯条大王9 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
ZJH__GO12 小时前
网络编程v4pro--实现聊天室文件传输功能
java·服务器·网络·计算机网络
程序员黑豆12 小时前
Windows 系统 Java 环境变量配置全攻略:解决“不是内部或外部命令”
java·前端·ai编程
命运之光12 小时前
【C语言完整代码】就诊信息管理系统
java·c语言·开发语言
凤山老林12 小时前
Spring Boot @Async 线上实战:从默认配置到生产级线程池治理
java·spring boot·后端
marvelyu13 小时前
每天10分钟学会OceanBase系列(Day 20):跨机房容灾实战——构建多数据中心高可用架构
java·大数据·数据库
ZCBUS实时计算13 小时前
金融证券实时数仓建设实践:轻量化实时计算平台落地,实现交易数据端到端秒级处理
大数据·数据库·数据仓库·金融·flink·dba·etl
zd20057213 小时前
海洋微生物数据库
数据库·宏基因组