重读大型网站技术架构

花了一天时间重读了一下这本书,这本书东西不深,普及读物,表示很欣赏。笔记一下吧:

1.架构模式

分层,分割,分布式(应用和服务,静态资源,数据和存储,分布式计算),集群,缓存(CDN,反向代理,本地缓存,分布式缓存),异步,冗余,自动化,安全

2.核心要素

a.性能

指标:响应时间,并发数,吞吐量,性能计数器

测试:性能测试,负载测试,压力测试,稳定性测试

优化:1前端: 浏览器:减少http请求,使用浏览器缓存,启用压缩,CSS在顶部JS在底部,减少Cookie传输,CDN,反向代理

         2服务器:分布式缓存,异步操作,使用集群,代码优化

         3存储优化:RAID VS HDFS

b.可用性

高可用应用:无状态失效转移,集群的Session管理(Session复制,Session绑定,Cookie记录Session,Session服务器)

高可用服务:分级管理,超时设置,异步调用,服务降级,幂指设计

高可用数据:CAP,数据备份,失效转移

c.伸缩性

负载均衡:http重定向,DNS域名解析,反向代理,IP,数据链路层(MAC地址,LVS)。算法:轮询,加权轮询,随机,最小连接,源地址散列。

分布式缓存一致性Hash,关系型数据库Cobar,NOSQL天然

d.扩展性

分布式消息队列

分布式服务

e.安全性

XSS(反射性,持久性)-》过滤,HttpOnly

SQL注入-》过滤,绑定变量

CSRF跨站点伪造-》表单Token,验证码,Referer check

白名单优于黑名单

你可能感兴趣的:(架构)