【MySQL】链接池原理:简单理解网站的数据流动

发布时间:2026/10/23 12:34:21

【MySQL】链接池原理:简单理解网站的数据流动 前言本节内容是博主快速上手mysql专栏的最后一篇文章。 本节内容不讲解mysql语法了 而是以网站为例讲一下前后端的逻辑与联系。 友友们可以当成一个故事听。 ps:本节不需要门槛 当成一个故事听即可*目录连接池原理注册和登录注册登录?* *连接池原理-----mysql 其实正常访问的时候我们把表创建好了之后下一步其实不是写各种各样的sql。而是基于表结构做开发写的都是上层的代码。然后我们对应的就需要去连接数据库。而我们每次连接数据库的时候就是创建MYSQL数据库对象对他connect然后用完把数据库关掉。其实就是执行很小部分的sql或者事务后就关掉了这就是一种短链接。所以mysql就在网站和数据库之间有一种编码级别的技术就叫做连接池。所谓的连接池怎么去理解下面我们利用一张图理解一下 上面这是一个数据库 就是我们在执行事务或者sql时 一般都是执行完一个事务 或者一个sql之后 就断开连接了。而实际上我们可以设计一个叫做连接池的小组件预先让多个线程对mysql建立好链接**建立好连接之后就不动了一直处于连接的状态。后面有任何任务到来就把对应的sql语句push到连接池当中。然后把任务交给连接池当中的线程。这个线程在被启动的时候一定是给线程绑定或者关联了连接资源。连接池里面的动作就应该是下面这样 创建线程池 MYSQL 启动线程池 connect while(true) { ? ? ? ? //等待拿任务。 } 而连接池里面的的数据就是一个一个的我们自己封装的任务。这个任务里面我们必须要封装sql语句 也就是sql对应的字符串 class tack { private: string sql; function cb;// }; 有了这个task任务类之后 以后我们想要执行某个sql语句就是将想要执行的sql语句写成字符串然后构建一个task对象最后把这个task对象push到线程池队列里面。线程池队列会从队列里面一个一个的拿到task任务将里面的string类型的sql成员取出来去访问mysqld。 然后上面有那个cb函数这里的cb是什么意思呢 因为我们的添加删除修改有时需要把我们的结果拿到。所以如果我们的cb没有设置那么就什么都不做如果cb设置了就执行select语句得到结果集res 然后回调cb函数:cb(res)。然后我们的数据就被拿回来了! 以上就是连接池小组件大概的逻辑。注册和登录-----### 注册我们先看一下用户的注册。利用一张图来理解: 1. 首先我们一定要先访问网站 网站然后给我们返回一个注册的界面。 2. 我们填好各种信息之后 就点了提交 这个时候接口就将我们填写的信息提交到了网站的内部。 3. 网站内部就是用web语言 比如java php python等等语言 将各个参数提取出来构成sql语句。 4. 提交到数据库当中 但是提交到数据库当中太慢所以就用到了一层软件层。 这个软件层可能是c/c或者其他的快速的脚本语言写的。 5. 数据库本身也能够定期进行数据同步 所以我们的软件层只需要挑选其中一个数据库将数据写到数据库当中就行了。这样做了之后网站就不需要关心有多少数据库 只要在网站和数据块之间添加一层软件层即可。### 登录 登录同样可以利用类似于上面的图来理解 不同的是当网站返回页面的时候 不是注册页面 而是登陆页面。 我们同样需要将信息提交。然后网站内部就执行一个select语句 就比如select* from user where user ‘XXX’ and passwd XXX’这种。然后就去查找。 查找到结果后就说明有这个用户 就能通过。 否则就不能通过。 中间的软件层部分我们也可以添加一些缓存 类似redis这些数据库。 就是用来保存高热度的数据 以后去数据库查找之前先到这些缓存里面去找 查到了就返回。——————以上就是本节全部内容哦 如果对友友们有帮助的话可以关注博主 方便学习更多知识哦
延伸阅读

更多相关文章

2026/10/21 5:23:34

从GLM-5.3-Flash到MHS标准:大模型成本与信任的双线竞争

早上打开 BestBlogs 早报,08-28 这一期被我扫到了两条:一条是 GLM-5.3-Flash 发布,另一条是 Anthropic 推进 MHS 标准。单看标题,这两句话都可以当普通的行业动态刷过去——每天都有模型发布,每天都有公司说自己在做标…

2026/10/13 21:44:30

Shell脚本实战:从基础语法到自动化运维脚本编写

Shell 脚本是 Linux 自动化运维里最基础也最高频的技能。很多新手把ls、cd当成 shell 的全部,但遇到批量改文件、清理日志、定时备份、服务异常拉起这些任务时,才发现自己只会手动一条条敲命令,敲完还容易漏掉某一步。这篇文章默认读者没有写…

2026/10/21 11:34:59

Python爬虫+数据可视化:天气轮播图完整项目实战

最近不少同学都在找 Python 期末大作业的完整案例。如果项目既要体现爬虫,又要把数据可视化做出来,还要在答辩或演示时有点亮点,那“天气数据爬取 数据可视化 天气轮播图”这一套组合就非常合适。它把 Python 爬虫、数据处理和图表展示都串…

2026/10/23 19:26:12

UEFI启动链下的开机图标修改:HackBGRT 1.5.1实操与避坑

简介:HackBGRT-1.5.1.zip 是面向希望替换 Windows 10 默认开机 LOGO、实现启动画面个性化用户的开源工具包,适合具备一定系统操作与编译基础、想研究 BGRT 启动图形修改机制的读者。压缩包共 20 个文件,约 73KB,包含 C 与 C# 源码…

2026/10/23 19:26:12

矩形微带天线尺寸计算:MATLAB脚本与公式详解

简介:这份资源面向无线通信、射频电路与天线设计方向的学习者和工程师,提供一套用MATLAB计算矩形微带天线尺寸的实用脚本。矩形微带天线因结构简单、易于加工而应用广泛,设计难点在于根据中心频率、相对介电常数和基板高度快速确定贴片宽度、…

2026/10/23 19:26:12

Z-EVES形式化验证原理与避坑指南

简介:本资源为形式化方法领域核心工具Z-EVES的完整安装与学习套件,面向软件工程、安全关键系统开发人员及高校形式化验证课程学习者,解决Z语言规格编写、自动推理、模型检查与交互式验证等实践难题。压缩包共5个文件(2个Windows可…

2026/10/23 19:26:12

呼叫中心防封号系统解析:外呼频次控制与号码池调度实战

1. 为什么外呼系统会被限制,防封号到底在防什么先说个实际现象:很多人刚接触呼叫中心外呼系统时,第一反应是“我只要把号码导进去,一个接一个打出去就行”。结果跑了一个上午,下午号码就进了黑名单,第二天连…

2026/10/23 19:26:12

并行计算入门:从搬砖比喻到多核编程实战

简介:这份资源是天津大学并行计算课程的配套学习资料,面向计算机专业学生、高性能计算方向的学习者以及需要系统梳理并行编程知识的技术人员,帮助其理解共享内存与分布式内存模型、掌握OpenMP与MPI等并行编程工具,并具备将串行算法…

2026/10/23 19:21:12

控制台贪吃蛇从能跑到能玩:环形数组、状态机与定点重绘实战

上一篇文章,我们把控制台贪吃蛇最基础的版本跑通了:蛇能动、食物能刷、撞墙能结束。但那个版本距离“一个能玩的游戏”还差得远。如果你真把它拿给朋友试玩,多半会被吐槽三件事:按键卡顿、画面闪烁、蛇稍微一长就找不着头在哪。这…

2026/10/22 11:29:28

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/23 0:02:26

Verilog实现FPGA密码锁:矩阵键盘与状态机设计实战

说实话,这几年接触了不少想入门FPGA的朋友,如果你问哪个项目能一口气把Verilog的核心基本功串起来,我通常会推荐电子密码锁。这个项目看着不起眼,却把矩阵键盘扫描、按键消抖、状态机设计、动态显示刷新、外设控制这些数字逻辑里的…

2026/10/23 0:02:26

数据服务监控运维实战:从指标体系到告警治理与故障排查

周末凌晨两点,手机震了。第一反应是“数据服务挂了”。打开电脑看了下,果然,某张核心报表的数据产出时间已经超过SLA两小时,下游三个业务方连着发来问询。这种场景,做过大数据运维的人都不会陌生。数据服务的监控与运维…

2026/10/23 0:02:26

FreeRTOS任务通知实战详解:内核原理、API与避坑指南

裸机编程切到RTOS之后,任务之间的通信和同步永远是躲不开的坎。前面聊过队列、信号量、互斥锁、事件组,这次把FreeRTOS任务通知(Task Notification)单独拎出来讲透。原因很简单:任务通知是FreeRTOS里最容易用错、也最容…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑