导图社区 亿级流量网站架构核心技术
这是一篇关于亿级流量网站架构核心技术的思维导图,主要内容有无状态、拆分、服务化、队列术、数据异构、缓存银弹、并发化。
社区模板帮助中心,点此进入>>
项目时间管理6大步骤
互联网9大思维
项目管理的五个步骤
电商部人员工作结构
电费水费思维导图
D服务费结算
产品立项报告
组织架构-单商户商城webAPP 思维导图。
博弈的理解与运用
暮尚正常运转导图
亿级流量网站架构核心技术
高并发
无状态
拆分
服务拆分
数据库拆分
服务化
队列术
缓冲队列
任务队列
消息队列
请求队列
数据异构
查询维度异构
聚合维度异构
缓存银弹
缓存类型
堆缓存:guava、ehcache、mapdb
堆外缓存:ehcache、mapdb
磁盘缓存:ehcache、mapdb
分布式缓存:ehcache、memcache、redis
模式
Cache-Aside
Cache-As-SoR
Read-Through
Write-Through
Write-Bhind
其实就是封装了缓存接口,内部有从db获取数据的操作,但是对外接口只有对cache的操作
Copy Pattern
Copy-On-Write
Copy-On-Read
并发化
Future
FutureCallback
CompletableFuture
高可用
限流
算法
时间窗口
滑动窗口
漏桶算法
令牌桶算法
限流层级
应用级限流(单机级别,如guava、enhache)
分布式限流(使用缓存,redis)
接入层限流
降级
与过载保护最本质的区别,过载保护是系统根据CPU、内存、线程、带宽等指标自动降级流量或限制流量,但是降级需要开发人员自己关注系统指标人工触发
范围
页面降级
页面片段降级
页面异步请求降级
前端降级
服务功能降级
读降级
写降级
写缓存,异步更新db
爬虫降级
风控降级
后端降级
开源工具
Hystrix
Sentinel
触发
超时降级
失败次数降级
故障降级
这三个其实是熔断(熔断可以认为是一种特殊的降级)
人工开关降级
限流降级
隔离
线程隔离
进程隔离
集群隔离
机房隔离
读写隔离
动静隔离
爬虫隔离
热点隔离
资源隔离
切流
DNS切流
HttpDNS
LVS/HaProxy
Nginx
四层负载均衡
七层负载均衡
回滚
熔断、降级、过载保护
关注点
熔断:下游服务稳定性,超时、报错、rt等
降级:自身服务资源情况,根据具体业务场景需要实现优先级降级
过载保护:自身服务资源及负载情况
触发逻辑
熔断:接口调用情况,取决于下游服务,自动触发与恢复
降级:人工开关
过载保护:自动触发
粒度
熔断:细
降级:细
过载保护:粗
熔断可以认为是一种特殊的降级