2021年3月13日

批量数据导入优化

摘要: 插入行所需的时间由以下因素决定[https://dev.mysql.com/doc/refman/5.7/en/insert-optimization.html](mysql manual) 连接:30% 向服务器发送查询:20% 解析查询:20% 插入行:10% * 行的大小 插入索引:10% * 阅读全文

posted @ 2021-03-13 15:33 hainingwyx 阅读(119) 评论(0) 推荐(0) 编辑

索引失效

摘要: 函数操作 对条件字段做函数操作走不了索引。 select * from t1 where date(c) ='2019-05-21'; 优化:改成范围查询 select * from t1 where c>='2019-05-21 00:00:00' and c<='2019-05-21 23:59 阅读全文

posted @ 2021-03-13 11:45 hainingwyx 阅读(54) 评论(0) 推荐(0) 编辑

2021年3月11日

慢查询定位与分析

摘要: 定位慢sql 1、查看慢查询日志确定已经执行完的慢查询 mysql> set global slow_query_log = on; mysql> set global long_query_time = 1; mysql> show global variables like "datadir"; 阅读全文

posted @ 2021-03-11 22:07 hainingwyx 阅读(122) 评论(0) 推荐(0) 编辑

2020年10月25日

redis主从同步

摘要: 主从库之间采用读写分离。 读操作:主库、从库都可以接收; 写操作:首先到主库执行,然后,主库将写操作同步给从库。 同步机制 第一次同步 通过 replicaof(Redis 5.0 之前使用 slaveof)命令形成主库和从库的关系。 1、主从库间建立连接、协商同步,为全量复制做准备。 从库和主库建 阅读全文

posted @ 2020-10-25 13:07 hainingwyx 阅读(85) 评论(0) 推荐(0) 编辑

2020年10月24日

redis RBD机制

摘要: RDB 就是 Redis DataBase,内存中的全量数据在某一个时刻的状态记录。 快照机制 引入原因:AOF日志进行故障恢复的时候,需要逐一执行操作日志。如果操作日志非常多,Redis 恢复得很慢,影响到正常使用。 bgsave命令:主进程fork出子进程,共享主线程的所有内存数据。子进程读取主 阅读全文

posted @ 2020-10-24 17:02 hainingwyx 阅读(517) 评论(0) 推荐(0) 编辑

2020年10月22日

redis AOF机制

摘要: 先写内存,在写日志。 1、命令执行成功才会被记录日志。 2、避免对当前命令的阻塞。 风险 1、突然宕机,Redis用作数据库的话,命令可能没有记入日志,所以就无法用日志进行恢复了。 2、AOF写磁盘,当磁盘压力大,会导致写盘慢,阻塞后续操作。 3、子进程要拷贝父进程的页表,这个过程的耗时和 Redi 阅读全文

posted @ 2020-10-22 21:00 hainingwyx 阅读(322) 评论(0) 推荐(0) 编辑

redis网络IO模型

摘要: 单线程 Redis 是单线程,主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的。持久化、异步删除、集群数据同步等,其实是由额外的线程执行的。 避免了多线程编程模式面临的共享资源的并发访问控制问题。 多路复用机制 一个线程处理多个 IO 流(select/epoll):在 Redi 阅读全文

posted @ 2020-10-22 20:16 hainingwyx 阅读(1053) 评论(0) 推荐(0) 编辑

redis数据结构

摘要: 基本数据结构包括:String(字符串)、List(列表)、Hash(哈希)、Set(集合)和 Sorted Set(有序集合) 基本数据结构 底层实现 string 动态字符串 List 双向链表、压缩列表 Hash 哈希表,压缩列表 Sorted Set 跳表,压缩列表 Set 哈希表、数组 r 阅读全文

posted @ 2020-10-22 07:29 hainingwyx 阅读(67) 评论(0) 推荐(0) 编辑

2020年10月21日

redis变慢以及优化方法

摘要: 确定问题 1、查看 Redis 的响应延迟。 2、基于当前环境下的 Redis 基线性能做判断 基线性能是系统在低压力、无干扰下的基本性能,Redis 运行时延迟是其基线性能的 2 倍及以上,可认定 Redis 变慢了。 问题定位 1、通过 Redis 日志,或者是 latency monitor 阅读全文

posted @ 2020-10-21 22:10 hainingwyx 阅读(907) 评论(0) 推荐(0) 编辑

基于多CPU多核架构的redis性能优化

摘要: CPU架构 一个 CPU 处理器中一般有多个物理核。 每个物理核都拥有私有的一级缓存( L1 cache)和私有的二级缓存(L2 cache)。 不同的物理核还会共享一个共同的三级缓存 每个物理核通常都会运行两个超线程,也叫作逻辑核。同一个物理核的逻辑核会共享使用 L1、L2 缓存 不同处理器间通过 阅读全文

posted @ 2020-10-21 21:14 hainingwyx 阅读(1144) 评论(0) 推荐(0) 编辑

导航