排序
为什么避免使用 SELECT * 以及最佳实践
为什么避免使用 SELECT * 以及最佳实践 SELECT * 的问题 -- 不推荐 SELECT * FROM user WHERE id = 123; -- 推荐 SELECT id, name, email FROM user WHERE id = 123; 很多开发人员习惯 SELECT *...
连接数参数 max_connections 详解
连接数参数 max_connections 详解 什么是 max_connections max_connections 是 MySQL 允许的最大并发客户端连接数。默认值 151(MySQL 5.5+),实际生产环境中几乎都需要调大。 -- 查看当前值 S...
Stream 数据结构详解:Redis 的消息队列利器
Stream 数据结构详解:Redis 的消息队列利器 什么是 Stream Stream 是 Redis 5.0 引入的一种全新的数据结构。它可以看作一个追加写日志(Append-Only Log),每条消息都有一个唯一的 ID,新消息...
如何定位和优化慢 SQL
如何定位和优化慢 SQL 慢 SQL 是性能问题的头号元凶 数据库性能问题中,90% 的根源是慢 SQL,而不是数据库本身。学会定位和优化慢 SQL,是 DBA 和后端工程师的核心技能。 第 1 步:开启慢查询日...
存储性能优化
存储性能优化 容器的存储挑战 容器相比传统虚拟机在存储方面有以下特点: 容器层是临时的,容器删除后数据丢失 写入层(Writable Layer)使用 Copy-on-Write(写时复制)机制 默认存储驱动(ove...
何时考虑分库分表?决策时机与评估方法
何时考虑分库分表?决策时机与评估方法 分库分表不是银弹 分库分表(Sharding)是解决数据库可扩展性问题的手段之一,但引入后带来的复杂度不可忽视。在做这个决策前,先问自己三个问题: 是否...
Lua 脚本在 Redis 中的作用与优势:为什么它是 Redis 的”瑞士军刀”
Lua 脚本在 Redis 中的作用与优势:为什么它是 Redis 的'瑞士军刀' Lua 脚本在 Redis 中的定位 Redis 从 2.6 版本引入 Lua 脚本支持,通过内置的 Lua 5.1 解释器,允许用户执行自定义脚本。Lua ...
哨兵架构组件
哨兵架构组件 一句话回答 Redis 哨兵架构由三个核心组件组成:主节点(提供读写服务)、从节点(提供读服务+热备)、哨兵节点(监控+选主+通知),三者协作构成高可用系统。 架构全景图 ┌──...
docker logs 查看日志
docker logs 查看日志 面试题 如何查看 Docker 容器的日志?docker logs 有哪些常用参数和配置? 标准答案 docker logs 是查看容器日志的核心命令,它获取的是容器内主进程的 stdout(标准输出...
单库单表性能瓶颈分析
单库单表性能瓶颈分析 什么是单库单表瓶颈 当业务发展到一定规模,一台 MySQL 实例和一个数据表无法承载全部流量时,就会出现性能瓶颈。理解这些瓶颈是决定是否需要分库分表的前提。 瓶颈的表现...

