惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
C
Check Point Blog
B
Blog RSS Feed
G
Google Developers Blog
H
Help Net Security
博客园 - Franky
Blog — PlanetScale
Blog — PlanetScale
H
Hackread – Cybersecurity News, Data Breaches, AI and More
量子位
Recent Announcements
Recent Announcements
B
Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
D
DataBreaches.Net
小众软件
小众软件
T
The Blog of Author Tim Ferriss
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
MongoDB | Blog
MongoDB | Blog
Y
Y Combinator Blog
T
Tailwind CSS Blog
J
Java Code Geeks
MyScale Blog
MyScale Blog
雷峰网
雷峰网
有赞技术团队
有赞技术团队
博客园 - 聂微东

博客园 - 漫漫人生路总会错几步

一种非常巧妙的设计模式 【流量密码】LVS与nginx对比 【轻量化交付宣言】:DevOps 的本质是工程化,而非工具化 【微服务】是【必须品】吗? 【JWT】真的好吗? PGSQL 1主2从数据库架构与单节点分3库在三块磁盘理论上限畅想(未测试) 相同的硬件,各个数据库专家比赛畅想 maven 原型项目 mysql9.5安装文档 微信图片批量保存的办法 win平台利用winsw将php-cgi作为系统服务,支持服务的正常启动/停止/重启 利用WinSW将Nginx 作为可正常启动/停止的windows服务 JPA使用pg数据库时,bool字段不能跨库迁移的解决方案 【ubuntu】程序运行时的任务栏图标 跨网段通信实战(支持静态路由表的家用路由) Linux系统Mariadb初始化相关(ubuntu) springboot 整合webservice 相关说明 tomcat 服务版本内存设置 navicat连接mysql8报错
【架构升华】:数据库是性能的物理终点
漫漫人生路总会错几步 · 2026-02-28 · via 博客园 - 漫漫人生路总会错几步

1. 第一原理:数据库是唯一的“硬约束”

在整个请求链路中(Nginx -> 应用服务器 -> 缓存 -> 数据库),应用服务器是无状态的,可以无限横向扩展;缓存是易失的,只负责加速。只有数据库是有状态的、物理落盘的、具备 ACID 约束的。

  • 核心结论:系统的支撑上限,最终取决于数据库的 IOPS(每秒输入输出量) 和 锁竞争频率。如果这个基础不牢靠,应用层搞再多微服务也只是“空中楼阁”。

2. “带宽”与“吞吐”的辩证法

“带宽有多大,并发就有多大”,假设你的数据库并发上限是无限大,任何sql查询的执行时间都不超过0.1ns,那么可以近似的认为你的带宽有多大,并发数就有多大

假设服务器带宽200M,每个请求1kb,那就是QPS=25600,这个数据是非常夸张的,可以认为服务器的带宽上下行流量都是压力爆棚

且达到上限了(眨眼时间7680 个请求被处理完成,即流量从到入口带宽的nginx到应用服务再到数据库在由应用处理逻辑返回到nginx到用户设备),当然这不可能

因为网卡io,磁盘io,cpu io,ram io,都要花费时间成本,其次,数据库也不可能那么快,数据库完全装内存里都不可能。

3. 性能漏斗模型:数据库是最后的瓶颈

所有的架构手段(前后端分离、CDN、服务治理、分布式事务、削峰、缓存、异步、限流、等等诸多技术)本质上都是一个“漏斗”,目的是为了过滤掉 90% 的无效请求,只让必须的数据写入请求到达数据库。

  • 牢靠的基础意味着:当那 10% 的核心请求到达数据库时,数据库能以微秒级的速度完成闭环,而不产生积压。
  • 反面教材:基础不牢(没索引、大事务锁表),一个请求卡住 1 秒,瞬间就会产生排队效应,把上游所有的带宽和连接数全部耗尽,这种情况, 前面得分哪怕是99分,最后的基数是0,得分也还是0