数据库连接池和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业务代码之间的桥梁"。

相关推荐
2601_962189601 分钟前
【SpringBoot】使用IDEA创建SpringBoot项目
java·spring boot·intellij-idea
步行cgn1 分钟前
Spring Boot 启动报错:MissingServletWebServerFactoryBean 的排查与解决
java·spring boot·后端
XLYcmy2 分钟前
HTML/CSS/JS 基础与 Vue 技术栈深度解析
java·前端·css·html·vue3·vue2·api
一只专注api接口开发的技术猿5 分钟前
Open Claw 实战|快速搭建电商商品监控与数据分析能力
大数据·数据库·数据挖掘·数据分析
杨云龙UP6 分钟前
Oracle 19c RMAN历史备份清理失败:CONTROL_FILE_RECORD_KEEP_TIME 问题排查与整改实战
linux·运维·网络·数据库·oracle·rac
~木雨12 分钟前
String 底层原理与常量池全解析:byte []+coder、intern 陷阱、substring 内存泄漏,一篇讲透
java·jvm·内存优化·string·字符串常量池
2601_9620739718 分钟前
【MySQL】全面学习数据库查询技巧:查询指令深度学习指南
数据库·学习·mysql
新知图书21 分钟前
12.3 智能体中Skill的约束与自进化实战
java·前端·数据库
en.en..29 分钟前
C语言 static函数与头文件封装规范
java·c语言·前端
步行cgn36 分钟前
Spring Boot 项目打包部署详解
java·spring boot·后端