架构师训练营 - 第五周 - 学习总结

用户头像
Anrika
关注
发布于: 2020 年 07 月 08 日
架构师训练营 - 第五周 - 学习总结

一、缓存

  • 缓存数据通常来自于内存,比磁盘上的数据有更快的访问速度。

  • 缓存存储数据的最终结果形态,不需要中间计算,减少CPU资源的消耗。

  • 缓存降低数据库、磁盘、网络的负载压力,使这些I/O设备获得更好的响应特性。

缓存的优点

  1. 支持大数据量存储,不受应用进程重启影响;

  2. 数据集中存储,保证数据一致性;

  3. 数据读写分离,高性能,高可用;

缓存的常见问题:

  1. 缓存击穿(更新缓存时使用分布式锁锁住服务,防止请求穿透直达DB);

  2. 缓存穿透(放入一个特殊对象);

  3. 缓存雪崩(缓存时间使用基本时间加上随机时间)。

二、消息队列,异步框架

消息队列调用架构

  • 点对点模型

  • 发布订阅模型

消息队的优点:

  1. 对结构复杂、设计系统多的操作进行解耦操作,降低系统的操作复杂度、降低系统的维护成本;

  2. 对一个可以进行异步操作的一些系统操作进行异步,减小操作的响应时间,提供更好的用户体验;

  3. 可对高流量进行削峰,保证系统的平稳运行。

消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题

实现高性能,高可用,可伸缩和最终一致性架构

使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,RocketMQ

三、负载均衡

  • 反向代理负载均衡

  • IP层的负载均衡

  • 数据链路层负载均衡

四、数据库

MySQL主从复制、主主复制的原理如下:

  • 主从复制,通过主服务器对数据库的操作写BinLog,从而通知到从服务器,写服务器的RelayLog。异步通知从DB根据RelayLog进行SQL执行。通过多台从服务器,从而提供多台对外的数据读取服务。

  • 主主复制,不会两台主DB同时写,避免数据冲突。每台BinLog都是接收直接的数据库操作;而Relay Log负责从另一台操作读取同步信息。



用户头像

Anrika

关注

还未添加个人签名 2018.08.21 加入

还未添加个人简介

评论

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