《大型网站技术架构》学习笔记——架构模式
来源:互联网 发布:和活好的男朋友知乎 编辑:程序博客网 时间:2024/05/29 04:59
为了解决高并发访问、海量数据处理和高可靠性运行一系列问题,大型网站架构都会有一些大同小异的套路,可称为大型网站的架构模式:
1、分层
逻辑概念。将系统在横向维度上划分成几个部分,每个部分负责相对单一的职责,然后通过上层对下层的依赖和调用,共同组成一个完整的系统。
通常可分为
应用层:负责业务和视图战士,如网站首页、搜索输入及结果等。可以继续细分为视图层 + 业务逻辑层
服务层:为应用层提供服务支持,如用户管理、购物车服务等。可细分为 数据接口层+ 逻辑处理层。
数据层:提供数据存储及访问,如数据库、缓存、文件、搜索引擎等
分层架构必须合理规划层次边界和接口,禁止跨层次调用,比如应用层直接调用数据层,或者你想调用,数据层调用服务层,服务层调用应用层等。
分层结构对网站日后的扩展等至关重要,应该在规模很小的时候就进行分层。
补充:
MVC模式是一种框架模式。它跟网站这个架构模式怎么结合?找到一些图,先记下来,以后在实践中体会:
2、分割
在纵向对功能进行分割。比如在应用层,将不同业务进行分割,交给不同团队负责,部署在不同的服务器。
3、分布式
分层、分割的一个主要目的是便于分布式部署。
分布式意味着有更多的机器来共同完成同样的功能,资源更多,能够处理的数据和访问就越多。但开发管理复杂,因此要量力而行。
常用分布式方案:
1)分布式应用和服务
2)分布式静态资源。如JS、CSS、LOGO图片独立分布存放,并采用独立的域名,所谓动静分离。独立域名是为了加开浏览器并发加载速度。
3)分布式数据和存储。
4)分布式计算
4、集群
因为有更多服务器提供相同服务,因此集群可以提供能好的并发性。更重要的是,避免业务不致受服务器故障的影响。所以在网站应用中,即使是访问量很小的功能,也至少部署两台服务器构成一个小集群。
5、缓存
1)CDN
2)反向代理
3)本地缓存
4)分布式缓存
6、异步
引入排队机制,改善体验。
7、冗余
集群,备份。
8、自动化
无人值守,自动化发布,监控,告警,失效转移等。
9、安全
- 《大型网站技术架构》学习笔记——架构模式
- 《大型网站技术架构》学习笔记——架构演化
- 《大型网站技术架构》学习笔记——大型网站核心架构要素
- 《大型网站技术架构》学习笔记——大型网站核心架构要素
- 《大型网站技术架构》笔记:大型网站架构模式
- 大型网站技术架构(二)——架构模式
- 大型网站技术架构学习笔记
- 大型网站技术架构读书笔记02—大型网站架构模式
- 大型网站技术架构:核心原理与案例分析—第二章:大型网站架构模式
- 大型网站技术架构 笔记
- 大型网站技术架构 笔记
- 大型网站技术架构 笔记
- 《大型网站技术架构》笔记
- 大型网站技术架构 读书笔记1 大型网站架构模式
- 《大型网站技术架构》读书笔记二:大型网站架构模式
- 《大型网站技术架构》读书笔记二:大型网站架构模式
- 【大型网站技术架构笔记】(二)大型网站架构模式与核心要素
- 《大型网站技术架构》笔记:大型网站架构演化
- 逆序对
- QA与“如此保镖”
- 值得关注的议题:这么一家子----Linux,2013
- C# 判断字符串是否是 数字
- 学习计划
- 《大型网站技术架构》学习笔记——架构模式
- Understanding Component-Entity-Systems
- 编程趣味题4
- libuv
- gcc使用
- mina的初始化过程分析(一)
- 堆排序
- linux 下安装mysql--tar.gz和rmp安装
- canvas合集