摘要:一、MySQL主从搭建 主从配置原理: 主库写日志到 BinLog 从库开个 IO 线程读取主库的 BinLog 日志,并写入 RelayLog 再开一个 SQL 线程,读 RelayLog 日志,回放到从库中 主从配置流程: master 会将变动记录到二进制日志里面; master 有一个 I/ 阅读全文
posted @ 2021-07-30 20:07 Mr-Yang` 阅读(119) 评论(0) 推荐(0) 编辑
摘要:一、消息队列 消息队列就是一种先进先出的数据机构 当在分布式系统中的时候,不同的机器需要做数据交互,所以涉及到不同机器之间的数据交互,这样的话就需要借助专业的消息队列,常见的消息队列有 RabbitMQ 、Kafka...他们都是开源且支持语言较多。 消息队列解决的问题: 应用解耦 流量消峰: 如果 阅读全文
posted @ 2021-07-29 22:51 Mr-Yang` 阅读(335) 评论(0) 推荐(0) 编辑
摘要:一、双写一致性 双写一致性,也就是说 Redis 和 mysql 数据同步 双写一致性数据同步的方案有: 1、先更新数据库,再更新缓存 这个方案一般不用: 因为当有两个请求AB先后更新数据库后,A应该先更新缓存,但是因为网络原因,B却先更新了缓存,导致了脏数据,所以不考虑用。 2、先删缓存,再更新数 阅读全文
posted @ 2021-07-28 20:53 Mr-Yang` 阅读(40) 评论(0) 推荐(0) 编辑
摘要:当并发量大于单机 Redis 的并发量时,或者数据量大于单机内存的容量,就可以采用加机器分布式集群的方式来解决。 在 Redis 中,集群是 3.0 以后加入的,3.0——5.0 之间需要采用了 ruby 脚本实现集群,而 5.0 之后就内置了。 一、数据分布 假设全量的数据非常大,500G,单机已 阅读全文
posted @ 2021-07-28 11:31 Mr-Yang` 阅读(352) 评论(0) 推荐(3) 编辑
摘要:一、Sentinel说明 在主从复制中,master 挂掉了,那么整个就崩掉了,因为 slave 不能写数据。 所以哨兵的作用就是让 Redis 的主从复制高可用 在 master 挂掉后,Sentinel 在选一个 slave 当做 master,就算之前的那个 master 启动起来了,也只能当 阅读全文
posted @ 2021-07-28 08:46 Mr-Yang` 阅读(10) 评论(0) 推荐(0) 编辑
摘要:一、什么是主从复制 主从复制就是一个主库,一个从库或多个从库,一主多从。 主库就负责写数据,从库跟主库数据同步起来,这样就可以从库读数据,主库写数据,实现读写分离。 而且数据流向是单向的,从 master ——> slave,主库挂掉了,从库的数据还在。 原理: 1. 从库通过 slaveof 12 阅读全文
posted @ 2021-07-27 22:27 Mr-Yang` 阅读(11) 评论(0) 推荐(0) 编辑
摘要:持久化就是将 Redis 的所有数据保存在内存中,对数据的更新将异步保存到硬盘上 持久化的实现方式: 快照:在某时某刻对数据进行一次完整备份 RDB 写日志:记录所有的操作日志,要恢复数据,只要把日志重新走一遍就可以了 AOF 一、RDB RDB 就是在 Redis 触发备份的时候,创建 RDB 文 阅读全文
posted @ 2021-07-27 19:09 Mr-Yang` 阅读(80) 评论(0) 推荐(0) 编辑
摘要:一、通用命令 **keys:**keys命令一般不在生产环境中使用,生产环境key很多,时间复杂度为o(n),用scan命令 keys * # 打印出所有key keys he* # 打印出所有以he开头的key keys he[h-l] # 打印出所有以he开头,第三个字母是h到l的范围 keys 阅读全文
posted @ 2021-07-27 18:51 Mr-Yang` 阅读(9) 评论(0) 推荐(0) 编辑
摘要:一、Celery异步任务框架 Celery是一个异步任务框架,并且是一个简单、灵活可靠的,处理大量消息的分布式系统 Celery服务为其他项目服务提供异步解决任务的需求,内置socket Celery可执行的任务:执行异步任务,执行延迟任务,执行定时任务 Celery 官方文档英文版:http:// 阅读全文
posted @ 2021-07-21 20:12 Mr-Yang` 阅读(156) 评论(0) 推荐(0) 编辑
摘要:一、Redis Redis 是一个 key-value 的存储系统,和Memcached类似,value 有五大数据类型,并且数据都是缓存在内存中。 string(字符串) list(链表) set(集合) zset(有序集合) hash(哈希类型) Redis 的好处特点 好处: 速度快:因为数据 阅读全文
posted @ 2021-07-20 21:35 Mr-Yang` 阅读(256) 评论(0) 推荐(1) 编辑