本文参考了两位阿里人写的书:《大型分布式网站架构设计与实践》(https://book.douban.com/subject/25972633/)《大型网站技术架构:核心原理与案例分析》(https://book.douban.com/subject/25723064/)
以下是本人的一些总结与思考。
大型分布式网站架构核心要素:
- 性能
- 可用性
- 伸缩性
- 扩展性
- 安全性
这里只做一个概述,具体目录如下:
大型分布式网站技术架构笔记(二) 性能优化
大型分布式网站技术架构笔记(三) 高可用架构
1 性能
性能是一个网站的重要指标,任何架构设计都必须考虑性能的问题。
性能涉及到前端优化,服务器端优化,数据库查询优化等多个方面。因此,只在此介绍一些常用的调优方式。
前端优化
在浏览器端,可以使用浏览器缓存,页面压缩,页面合理布局,减少http请求等手段改善性能。
还可以使用CDN,将静态内容分发至离用户最近的网络服务机房,使用户可以以最短的路径获取数据。服务器端优化
可以使用缓存,通过缓存的数据处理用户请求,加快请求过程,减轻数据库负载压力。
也可以异步操作将用户请求发送至消息队列,等待后续处理,当前请求直接返回响应给用户。
在网站有高并发的情况下,可以使用集群,提高整体处理能力,改善性能。
在代码,可以使用多线程加快处理速度