美文网首页
《亿级流量网站架构核心技术》读书笔记一

《亿级流量网站架构核心技术》读书笔记一

作者: 真实的追梦者 | 来源:发表于2018-10-24 21:54 被阅读21次

    高并发原则:无状态,拆分,服务化,消息队列,缓存

    浏览器缓存:设置请求的过期时间,如对响应头expires,cache-control 进行控制,只适用于对实时性不敏感的数据

    客户端缓存:比如提前将静态文件进行缓存

    CDN缓存:将内容吐送到离用户最近的 CDN 节点

    高可用原则:降级,限流,切流量,可回滚

    业务设计原则:防重设计,比如结算页防止重复提交;幂等设计,流程可定义,状态与状态机

    负载均衡与反向代理:上游服务器配置,负载均衡算法,失败重试机制,服务器心跳检查

    负载均衡算法:轮询;ip_hash,hash key(建议使用一致性哈希算法),哈希算法(根据请求uri进行哈希),least_conn(将请求负载到最少活跃的服务器)

    隔离:线程隔离(主要指线程池隔离),进程隔离,集群隔离,机房隔离,读写隔离,爬虫隔离(将一些恶意访问倒流到其他地方),热点隔离(对于读热点使用多级缓存,对于写热点使用队列)

    限流:(最终结果是有损服务而不是不服务)令牌桶算法,应用级限流,分布式限流(lua+Redis 或 Nginx+lua),接入层限流(Nginx)

    节流:(在特定时间窗口内,如果有多个重复请求则只处理一个)

    降级:(保证核心系统可用)读服务降级,写服务降级(将同步操作变为异步操作,比如将写DB的操作变为发送一条写DB的消息)

    超时与重试机制:代理层超时与重试,web 容器超时,中间件客户端超时与重试,数据库客户端超时,nosql 客户端超时,业务超时,前端ajax 超时。超时以后,应该要有相应的策略来处理,比如重试,尝试其他服务,返回托底数据,返回错误页。

    回滚机制:事务回滚,有时候不需要保证强一致性,只需要保证最终一致性,部署版本回滚,静态资源回滚

    压测与预案:系统压测(读压测,写压测,混合压测),为了保证压测的真实性,应该使用全链路压测

    缓存:让数据更接近使用者,让访问速度更快。

    缓存回收策略:基于空间,基于容量,基于时间

    回收算法:FIFO,LRU,LFU

    HTTP缓存的一些经验:只缓存200状态码的响应;不需要强一致的页面可以进行缓存;css等静态文件可以设置很长过期时间,通过版本号来控制过期;缓存 key 要合理设计

    相关文章

      网友评论

          本文标题:《亿级流量网站架构核心技术》读书笔记一

          本文链接:https://www.haomeiwen.com/subject/dohftqtx.html