架构师训练营第五周总结

发布于: 2020 年 07 月 08 日

第五周主要讲缓存、消息队列与异步架构、负载均衡、分布式数据库等。

  • 常用缓存:

  • 缓存特点:

1.高速

2.命中率要高

3.缓存键

4.缓存可使用内存空间

5.缓存对象生存时间

  • 缓存分类:

通读缓存:

旁路缓存:

  • 分布式对象缓存的一致性Hash算法

主要解决增加或删除节点可能引起的缓存雪崩问题。

算法的要点在于对节点进行Hash运算得出节点的Hash值。

Key获取存储服务器的时候,先计算Hash值,然后按顺时针顺序拿最近的节点。

当删除一个节点时,则自动拿到下一个节点;当增加一个节点时,新增的节点会截获一部分Key。

还可以增加虚拟节点,以提高分布均匀性。

  • 各种介质数据访问延迟

由这个表可以看出操作数据尽量使用前三种,可大大节约操作时间。

  • 技术栈各个层次的缓存

  • 合理使用缓存

1.频繁修改的数据不要缓存

2.没有热点的数据不要缓存

3.注意数据不一致或脏读

4.注意缓存雪崩

5.缓存预热

6.缓存穿透:读取不存在的数据时发生,策略:将高频不存在数据存储在缓存中(value设置为null)

  • 常用缓存

redis和memcache

  • 消息队列与异步架构

  • 负载均衡架构

几种常用的负载均衡架构

HTTP重定向负载均衡

优点:

缺点:

实现:

DNS负载均衡

优点:

缺点:

实现:

反向代理负载均衡:

优点:

缺点:

实现:nginx

IP负载均衡

优点:

缺点:

实现:

数据链路层负载均衡

优点:

缺点:

实现:

  • 负载均衡算法

  • 负载均衡的Session管理

Session复制

Session绑定

利用Cookie记录Session

Session服务器

  • 分布式数据库

MySQL主从复制

MySQL一主多从

优点:

分摊负载

专机专用

便于冷热备

高可用

MySQL主主复制

MySQL主主失效恢复

MySQL主主失效的维护过程

MySQL复制注意事项:

  • 数据分片

  • NOSQL

CAP原理

  • ZooKeeper

  • 搜索引擎

发布于: 2020 年 07 月 08 日 阅读数: 6
用户头像

王鑫龙

关注

还未添加个人签名 2018.02.04 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第五周总结