摘要:
用 net/http 包可以快速起一个 web 服务 package main import ( "fmt" "net/http" ) func helloWorld(w http.ResponseWriter, req *http.Request) { _, err := fmt.Fprintf( 阅读全文
摘要:
Predixy 是一款高性能全特征 redis 代理,支持 redis-sentinel 和 redis-cluster 组件特性: [Predixy 支持的功能](https://github.com/joyieldInc/predixy/blob/master/README_CN.md) 为什么 阅读全文
摘要:
### 一:物理全备 优先选择 基于slave 节点全备;当不存在可用的 slave 节点时,选择 master 节点备份 ``` 基于 slave 节点: innobackupex --defaults-file=/etc/my.cnf -S /tmp/mysql.sock --ftwrl-wai 阅读全文
摘要:
一直以来,由于 DBA 的误操作或者业务bug,导致误删数据的情况都时有发生。当出现误删数据的情况时,从线上操作日志构造误删除的数据,或者DBA使用binlog和备份的方式恢复数据,不管哪种,都非常费时费力,并且容易 出错。可能有的同学会说从 从库恢复,但实时主从备份只能防止硬件问题,比如主库的硬盘 阅读全文
摘要:
一: 优雅分析 种种原因,业务中有时会有批量删 key 的需求,但如何删是一个值得讨论的问题。如题 “优雅” 二字,我们不希望这个操作 影响 Redis 的正常使用,或是性能波动等的问题。 所以,下面我们讨论的内容一切围绕 "优雅" 展开。 一个良好的 Redis 使用习惯,key 的命名应该是有规 阅读全文
摘要:
一:Prepere Statement 简介 prepare statement 即 SQL 预处理。什么是 SQL 预处理? 普通 SQL 语句执行的逻辑 需要经过 server 层 的 分析器 (图中圈住的部分) 对 sql 语句进行词法语法解析、sql 编译, 这需要一些性能开销,尤其在一些高 阅读全文
摘要:
一:回表概述 关于回表的概念网上已经有很多了,这里不过多赘述。下面我们直接放一张图可能更直观说明什么是回表。 图中 非聚集索引也叫二级索引,二级索引本质上也是 一 个 B+ 树结构,与聚集索引(也叫主键索引)不同的是,非聚集索引并不包含表上的完整数据,当在e二级索引上查询时,实际上数据规模变小了很多 阅读全文
摘要:
多大的 key 算大? 阿里云Redis 最佳实践中提到 合理的 Key 中 Value 的字节大小,推荐小于10 KB。过大的 Value 会引发数据倾斜、热点Key、实例流量或 CPU 性能被占满等问题,应从设计源头上避免此类问题带来的性能影响。那么 value Bytes >10kb 可以作为 阅读全文