执行计划与慢查询优化
实测:EXPLAIN QUERY PLAN 的 SCAN/SEARCH/COVERING INDEX 三种形态;OFFSET 99000 要 9.97ms 而键集分页 0.08ms;executemany 不加事务和逐条一样慢。
共 7 篇 · 全部标签
实测:EXPLAIN QUERY PLAN 的 SCAN/SEARCH/COVERING INDEX 三种形态;OFFSET 99000 要 9.97ms 而键集分页 0.08ms;executemany 不加事务和逐条一样慢。
实测:自建 PC 采样器量出三热点 59.9%/33.8%/6.2%(理论 62.5/31.2/6.2);GCC 把 noinline 纯函数调用提出循环造成假快 2000 倍;gprof 在 MinGW 输出空表。
未实测(本机无 Linux):/proc 与 /sys 的关键指标口径、top/vmstat/iostat/sar 的组合读法、perf record/report 与火焰图、以及 USE 方法(利用率-饱和度-错误)的判断框架。
实测:1000 次 update() 只触发 1 次 paint,repaint 每次 50µs;1000 次 resize 94ms;release 下 qDebug 被 QT_NO_DEBUG 编译掉。
栈、堆、静态区的真实地址分布,malloc 与 calloc 的差别值一次 memset,内存池比逐个分配快在哪,以及在没有 ASAN 的工具链上用一张账本抓泄漏。
30 万次查找实测:map 比 unordered_map 慢 10 倍,sorted vector 二分反而快过 set;operator[] 会偷偷插入,reserve 让 push_back 快 2.4 倍。
实测:级别短路放在格式化之前是 0.2 纳秒/行、放在之后 181.2 纳秒(900 倍);崩溃时 4 KB 缓冲会丢掉八成日志;文本日志 zlib 后只剩一成。