[笔记] 大型网站技术架构——核心原理与案例分析 [二]
来源:互联网 发布:hadoop 书籍 知乎 编辑:程序博客网 时间:2024/05/22 09:47
2 大型网站架构模式
模式的关键在于模式的可重复性,问题与场景的可重复性带来解决方案的可重复使用(类似于设计模式中的模式)。
2.1 网站架构模式
2.1.1 分层
将系统在横向维度上切分成几个部分,每个部分负责一部分相对比较单一的职责,然后通过上层对下层的依赖和调用组成一个完整的系统。
在大型网站架构中也采用分层结构,将网站软件系统分为应用层、服务层、数据层。
优势:便于分工合作开发和维护
挑战:必须合理规划层次边界和接口,以及在开发过程中要严格遵循分层架构的约束,进制跨层次的调用以及逆向调用。
2.1.2 分割
在纵向方面对软件进行切分。分割形成高内聚低耦合的模块单元。
2.1.3 分布式
对于大型网站,分层和分割的一个主要目的就是为了切分后的模块便于分布式部署。
分布式可能遇到的问题:
1. 网络延迟的影响
2. 服务器宕机
3. 数据一致性保证
4. 开发维护的问题
在网站应用中,常见的分布式方案有以下几种:
- 分布式应用和服务
- 分布式静态资源
- 分布式数据和存储(传统的关系数据库分布式部署 / NoSQL )
- 分布式计算(MapReduce)
2.1.4 集群
将独立部署的服务器集群化,即多台服务器部署相同应用构成一个集群,通过负载均衡设备共同对外提供服务。
2.1.5 缓存
- CDN
- 反向代理
- 本地缓存:在应用服务器本地缓存这热点数据
- 分布式缓存:将数据缓存在一个专门的分布式缓存集群中
2.1.6 异步
在分布式系统中,多个服务器集群通过分布式消息队列实现异步,分布式消息队列可以看作内存队列的分布式部署。
- 网站扩展新功能非常便利
- 提高系统可用性
- 加快网站响应速度
- 消除并发访问高峰:将突然增加的访问请求数据加入消息队列中,等待消费者服务器依次处理,就不会对整个网站负载造成太大压力
2.1.7 冗余
服务器冗余运行+数据冗余备份
数据库——冷备份+热备份
灾备数据中心
2.1.8 自动化
2.1.9 安全
2.2 架构模式在新浪微博的应用
0 0
- [笔记] 大型网站技术架构——核心原理与案例分析 [二]
- 《大型网站技术架构:核心原理与案例分析》笔记
- 大型网站架构演化——《大型网站技术架构:核心原理与案例分析》读书笔记
- 《大型网站技术架构:核心原理与案例分析》——大型网站架构演化过程
- 大型网站技术架构:核心原理与案例分析—第一章:大型网站架构演化
- 大型网站技术架构:核心原理与案例分析—第二章:大型网站架构模式
- 大型网站架构演化—《大型网站技术架构:核心原理与案例分析》
- [笔记] 大型网站技术架构——核心原理与案例分析 [一]
- [笔记] 大型网站技术架构——核心原理与案例分析 [三]
- [笔记] 大型网站技术架构——核心原理与案例分析 [四]
- [笔记] 大型网站技术架构——核心原理与案例分析 [五]
- [笔记] 大型网站技术架构——核心原理与案例分析 [六]
- [笔记] 大型网站技术架构——核心原理与案例分析 [七]
- [笔记] 大型网站技术架构——核心原理与案例分析 [八]
- [笔记] 大型网站技术架构——核心原理与案例分析 [九]
- [笔记] 大型网站技术架构——核心原理与案例分析 [十]
- 《大型网站技术架构:核心原理与案例分析》拜读总结,第三章——大型网站架构核心要素
- 大型网站技术架构:核心原理与案例分析—第三章:大型网站核心架构要素
- 把字符串转换成整数
- 可变与不可变
- HDU 2795 放模板 (线段树_维护最大值,好题)
- 高德地图--显示篇
- hdoj 5037 Frog【贪心】
- [笔记] 大型网站技术架构——核心原理与案例分析 [二]
- 数组中重复的数字
- 欢迎使用CSDN-markdown编辑器
- 构建乘积数组
- Android混淆
- 嗯.来写点啥,万一好久不写指不定就是挂了
- 190 The database is configured in ARCHIVELOG mode and regular complete database backups are taken. T
- 正则表达式匹配
- 使用QGIS将文本坐标转换为矢量文件