VP导航 VP导航
首页 提交网址

资讯文章 资讯 · NEWS

运营要看的那张报表把主库拖慢了:目录站的报表查询该怎么隔离

2026-10-24 约 1,189 字 预计阅读 3 分钟 yiyunkj

运营要看的那张报表把主库拖慢了:目录站的报表查询该怎么隔离 运

目录站平时的查询都很轻——按分类取二十条、按 ID 取详情。真正的麻烦来自另一类请求:运营要看的统计、月度盘点、导出全量数据。这些查询扫描的行数是正常请求的上千倍,而它们往往是在业务高峰期跑的。

防线要从最便宜的一道开始加。

数据库四道防线挡住大查询的对照

图片来源:网络,版权归原作者所有,侵权请联系删除

第一道:给语句设一条死线

两个引擎都有服务端语句超时,但覆盖范围差得很远,用错了等于没设。

MySQL 的 max_execution_time 从 5.7.8 起提供,单位是毫秒,默认 0 表示不限制。它只作用于顶层只读 SELECT:写语句不管、子查询和派生表不管、存储程序里的语句也不管。也就是说,一条跑飞的 UPDATE 在 MySQL 上没有任何服务端时间上限,只能靠人工 KILL 或者外部看门狗。

PostgreSQL 的 statement_timeout 默认同样是 0(关闭),但一旦设置,它对该会话的每一条语句都生效,包括 VACUUM 这类维护命令。设在全局配置文件里,周末的维护脚本会跟着一起超时报错。正确的位置是按角色设置:

ALTER ROLE app_rw SET statement_timeout = '5s';
ALTER ROLE report SET statement_timeout = '60s';
ALTER ROLE maintenance SET statement_timeout = '2h';

这样应用连接卡得住,报表角色有足够时间跑完,维护任务不受影响。用连接池的话尤其要走 ALTER ROLE,因为事务级池化下,会话里的一次 SET 会漏给下一个借用到这条连接的人。

还有一点:语句超时管的是执行时间,等锁的时间不算在内。PostgreSQL 要另外配 lock_timeout,MySQL 对应的则是 innodb_lock_wait_timeout。

第二道:把报表流量导到别处

超时只能止损,不能隔离。真正的隔离是把两类负载分开跑。

防线挡什么手段
语句层一条跑太久的查询超时参数、资源组
路由层报表和交易混跑中间件按语句指纹分流
实例层分析型负载吃交易资源只读副本专供报表
数据层每次都要现场算汇总表、物化视图

第三道就是给报表单独挂一个只读副本。目录站的数据量通常撑不起一整套数仓,一个副本够用了。要注意两点:副本有延迟,报表数据比主库晚几秒到几十秒是常态,界面上要写明数据截止时间;副本挂了要有降级,报表失败不能拖累主流程。

第四道:能预计算的别现场算

大部分运营报表不需要实时。按天或按小时跑一次汇总,结果写进一张小表,前端直接读这张表,查询时间从四十秒降到几毫秒。目录站常见的几个统计——各分类条目数、本周新增、失效条目数——全部适合这么做。

汇总任务本身也该设超时和告警。跑失败了要有人知道,否则运营看到的是一份三天前的数,还以为是真实情况。

这四道不用一次全上。小站先把语句超时配上,就能挡掉八成的突发状况;等报表真的开始影响前台了,再往副本和汇总表上投入。

本文标签 只读副本隔离 报表查询超时 目录站数据库负载
← 上一篇 搜索页的缓存该不该开:目录站搜索结果缓存的四个判断点 下一篇 → 改一个字段就有人挂:目录站对外接口的版本该怎么管

— 本文完 —

提交网址

发现好站,欢迎自荐收录

站内搜索

站点统计

  • 今日审核0
  • 已收录站点3744
  • 正常访问3738
  • 失联站点6
  • 累计访问175

网站分类

  • AI工具 0
    AI对话0 AI绘画0 AI写作0 AI编程0 AI音视频0 AI办公效率0
  • 开发编程 0
    前端开发0 后端开发0 移动开发0 开源与代码托管0 数据库0 开发文档与教程0
  • 设计素材 0
    UI设计0 图标素材0 免费图库0 字体下载0 配色工具0 设计模板0
  • 站长工具 0
    网站统计0 SEO工具0 域名与主机0 收录提交0 建站程序0 运维监控0
  • 学习教育 0
    编程教程0 语言学习0 职业技能0 公开课与慕课0 考试题库0 中小学教育0
  • 生活服务 0
    交通出行0 外卖点餐0 房产租房0 医疗健康0 政务办事0 快递物流0
  • 影音娱乐 0
    影视观看0 音乐音频0 游戏资源0 短视频直播0 小说阅读0
  • 电商购物 0
    综合商城0 比价工具0 导购返利0 二手交易0 团购优惠0
  • 综合其他 1
    实用工具0 资源合集0 小众站点0 个人博客0 论坛社区0
  • 新闻资讯 0
    科技资讯8 财经媒体1 行业动态0 社会热点0 综合门户0
  • 资讯文章 400

最新收录

  • 条目页写多少字才不算薄:目录站的内容
  • 机器先过一遍,人工再看一遍:目录站的
  • Compose 用得好好的,要不要上
  • 给合作方开一个沙箱:目录站的对接环境
  • 备份一直有,恢复从来没试过:目录站的
  • 统计里那些「用户」其实是爬虫:目录站
  • 条目页上那个「更新于」不能乱改:目录
  • 大表加个字段要停多久:目录站的在线改

浏览排行

  1. 满分作文网 6
  2. Let's Enhance 3
  3. 淘菜菜 3
  4. MasterClass 3
  5. TypeScript 中文网 3
  6. Zhengziying 3
  7. 得意生活 3
  8. 镇江网友之家 3

联系我们

bQ:12345678

电话:400-8888-888

邮箱:admin@example.com

时间:09:00-21:00

友情链接

车机屋·焊锡条·探兔AI导航·静电测试仪·大学生联盟

关于我们|广告合作|隐私条款|网站地图

原ICP备00000000号-1,@2026

由 Z-BlogPHP 驱动