架构师训练营第 1 期 -- 第五周学习总结
按目录概括,本周学了缓存,消息队列,负载均衡。
本来想画个图总结下这周学习的内容,但翻了 PPT,发现知识点都比较分散,这周又比较忙,等以后有时间,再重复听下课,画个图重新做总结。
缓存分通读缓存和旁路缓存。在工作的应用中,用到 guava 的 Cache,用法就和通读缓存很类似。而代码里自己维护的一个 map,自己去管理 map 的内容,就和旁路缓存很类似。
实际工作中,分布式缓存接触得最多的是 redis。用法一般有两种,一种是直接当持久化层来用的,另一种,和维护一个 map 差不多。
消息队列,用于异步解耦,实现生产者-消费模型,削峰填谷,工作中用得多的是 kafka,最近也正在深入学习 kafka 中。
负载均衡,作业中写了一个一致性哈希算法的代码,加深了理解。老师总结了负载均衡的演变,很有逻辑性。
HTTP 重定向
DNS
反向代理
IP 负载均衡(修改 IP,返回数据经过负载均衡服务器)
数据链路层负载均衡(修改 mac,返回数据从应用服务器直接传回用户)
涉及到 session 同步的算法,在现实工作中实现过后端 session 服务器存储 session 的开发实现,印象较深刻。
评论