《大型网站技术架构》-读书笔记六:可扩展架构
一、构建可扩展的网站架构
1、如何分解系统的各个模块,如何定义各个模块的接口,如何复用组合不同的模块构造成一个完整的系统,
是软件设计中最具挑战的部分。
2、设计完整可扩展架构的核心思想是模块化,并在此基础上,降低模块间得耦合性,提高模块的复用性。这些
组件模块以消息传递及依赖调用的方式聚合成一个完整的系统。
3、分层和分割是模块设计的重要手段,模块进行分布式部署。模块分布式部署以后具体的聚合方式有分布式消息
队列和分布式服务。
二、利用分布式消息队列降低系统耦合性
1、事件驱动架构
2、分布式消息队列
3、利用分布式服务打造可复用的业务平台
(1)Web Service与企业级分布式服务
(2)大型网站分布式服务的需求与特点
1)负载均衡
2)失效转移
3)高效的远程通信
4)整合异构系统
5)对应用最少侵入
6)版本管理
7)实时监控
(3)分布式服务框架设计
目前国内有较多成功实施案例的开源分布式服务框架是阿里巴巴的Dubbo
(4)可扩展的数据结构
(5)利用开放性平台建设网站生态圈