Week5

用户头像
关注
发布于: 2020 年 07 月 08 日

本周主要讨论了:缓存、分布式数据库、消息队列、负载均衡的特点及应用场景。缓存解决了数据读的问题,消息队列解决了数据写的问题。

对于缓存,主要是利用了余数hash算法。

memcached主要使用了一致性hash算法。hash环上添加虚拟节点,使得数据分布更加平均。以解决添加或删除服务节点时带来的雪崩问题。

redis主要使用了LRU算法。redis实现思路是将数据分配在16384个桶中,然后集群中物理节点映射到这些桶上,redis集群中的服务不需要同步所有数据。客户端只需要任意连接集群中的一台服务器,就能获取所有数据。物理机会判断这个桶数据是否在本地,如果不在,他会将所有桶数据存放的物理节点信息做同步,然后去对应的机器上取出数据,返回给客户端。

消息队列,主要功能是削峰填谷,将生产者和消费者解耦。

负载均衡,主要分为http重定向负载均衡,dns负载均衡,反向代理负载均衡,IP负载均衡,数据链路层负载均衡。负载均衡算法主要包括:轮询、加权轮询、随机、最少连接、源地址散列。常用的是轮询和加权轮询。

分布式数据库:主要讨论了mysql的几种架构模式。主主、主从、一主多从。

用户头像

关注

还未添加个人签名 2018.05.02 加入

还未添加个人简介

评论

发布
暂无评论
Week5