第五周学习总结
Cache用于多次读,与Buffer的区别。
缓存键数越少,命中率越高。
restful 对于反向代理友好,url做key。
视频、图片重度依赖cdn
通读缓存、旁路缓存
缓存强大因为它简单
一致性hash算法 - 负载不均衡 - 虚拟节点,把一块面包揉碎洒出来
1k缓存查找对比数据库查找大概解决100倍时间,大概0.5ms。
数据读写比例2:1以上,缓存才有意义
缓存失效算法 LRU
缓存服务器不要同时关闭,否则可能导致系统雪崩
消息队列三个角色:生产者、消息队列和消费者
削峰填谷、解耦、事件驱动架构
缓存解决大量读,消息队列解决耗时写
重定向负载均衡存在的问题:两次http,暴露了应用服务器。因此这个基本不会使用。
DNS负载均衡在最外层。DNS服务器解析的ip地址会缓存在客户端本地,因此不能在DNS负载均衡里配置经常变动的服务器IP地址。
反向代理负载均衡(七层负载均衡),适用小规模(十台服务器)。因为http层比较重,反向代理服务器本身可能成为瓶颈。
IP负载均衡(三层负载均衡)。在IP层做转发,因此处理速度更快,对服务器压力更小。
链路层负载均衡(二层负载均衡)。修改mac地址,所有服务器共享虚拟IP地址。好处是不占用负载均衡服务器对外网的下行带宽。lvs支持后两种。
负载均衡算法:轮训,随机最常用
JWT?
主数据库增删字段,需要手工在从服务器增删。
一主多从,可以让从服务器专机专用,比如计算报表。
主主复制用于高可用,而不是用于两台同时写操作,因为可能会发生数据冲突,除非可以保证数据不冲突(比如做不同业务,操作的表完全不同)。应该一台写,另一台做高可用备份。
评论