互联网系统架构提纲指导思想实例架构进化实现框架常用技术指导思想分而治之(divide and conquer)集中调度(centralized schedule)缓存(cache)复制(replication)数据采集(sample)实例1:Google早期系统架构Replica 0BorgAlertManagerBackend0GFEBorgMonNetscalerBackend0UserBackend1GFEReplica 1Backend0GFEBackend1Backend0LBGTCGSLB实例2:分层分模块架构架构进化运用指导思想,一步一步进化成一个大规模的服务架构分离webserver和数据库/BlueDavy/archive/2008/09/03/226749.html状态收集增加页面缓存状态收集增加页面片段缓存状态收集数据缓存状态收集增加webserver状态收集服务调度分库状态收集服务调度分表、DAL和分布式缓存状态收集服务调度增加更多的webserver状态收集数据读写分离和廉价存储方案状态收集大型分布式应用和廉价服务器群状态收集服务调度实现框架Zookeeper服务集群管理Thrift RPC 实现服务模块Nagios数据采集监控ZooKeeperZookeeper 从设计模式角度来看,是一个基于观察者模式设计的分布式服务管理框架,负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper 就将负责通知已经在 Zookeeper 上注册的那些观察者做出相应的反应,从而实现集群管理。统一命名服务(Name Service)分布式应用中,通常需要有一套完整的命名规则,既能够产生唯一的名称又便于人识别和记住,通常情况下用树形的名称结构是一个理想的选择,树形的名称结构是一个有层次的目录结构,既对人友好又不会重复。Name Service 已经是 Zookeeper 内置的功能,只要调用 Zookeeper 的 API 就能实现。如调用 create 接口就可以很容易创建一个目录节点。配置管理(Config Management)配置的管理在分布式应用环境中很常见,例如同一个应用系统需要多台 Server 运行,但是它们运行的应用系统的某些配置项是相同的,如果要修改这些相同的配置项,那么就必须同时修改每台运行这个应用系统的 Server,这样非常麻烦而且容易出错。像这样的配置信息完全可以交给 Zookeeper 来管理,将配置信息保存在 Zookeeper 的某个目录节点中,然后将所有需要修改的应用机器监控配置信息的状态,一旦配置信息发生变化,每台应用机器就会收到 Zookeeper 的通知,然后从 Zookeeper 获取新的配置信息应用到系统中。配置管理(Config Management)集群管理(Group Membership)Zookeeper 能够很容易的实现集群管理的功能,如有多台 Server 组成一个服务集群,那么必须要一个“总管”知道当前集群中每台机器的服务状态,一旦有机器不能提供服务,集群中其它集群必须知道,从而做出调整重新分配服务策略。同样当增加集群的服务能力时,就会增加一台或多台 Server,同样也必须让“总管”知道。实现方式都是在 Zookeeper 上创建一个 EPHEMERAL 类型的目录节点,然后每个 Server 在它们创建目录节点的父目录节点上调用 getChildren(String path, boolean watch) 方法并设置 watch 为 true,由于是 EPHEMERAL 目录节点,当创建它的 Server 死去,这个目录节点也随之被删除,所以 Children 将会变化,这时 getChildren上的 Watch 将会被调用,所以其它 Server 就知道已经有某台 Server 死去了。新增 Server 也是同样的原理。集群管理(Group Membership)ThriftThrift 是 Facebook 实现的一种高效的、支持多种编程语言的远程服务调用的框架。结合了功能强大的软件堆栈的代码生成引擎,无缝地与C++,C#,Java,Python和PHP和Ruby,Javascript等多种语言结合。Thrift允许你定义一个简单的定义文件中的数据类型和服务接口,以作为输入文件,编译器生成代码用来方便地生成RPC客户端和服务器通信的无缝跨编程语言。竞品有ProtoBuf等。Thrift 文件样例Hello.thriftnamespace java service.demo service Hello{ string helloString(1:string para) i32 helloInt(1
您可能关注的文档
最近下载
- 《GBT24745-2009技术产品文件词汇图样注语》(最新)深度解析.pptx
- 关于绑架的小故事-绑架关起来的故事.docx VIP
- 2025年高考数学真题分类汇编专题07 数列(全国)(解析版).docx VIP
- 饿了么何以从草根中脱颖而出?.pdf VIP
- (人教版)化学九上 第六单元碳和碳的氧化物 大单元教学设计 .pdf VIP
- 老年语音助手创业计划书.docx VIP
- 操作手册_Fluke754操作手册.pdf
- 关于事业单位岗位管理制度实施后有关问题的处理意见.docx VIP
- 2019±800kV及以上特高压直流系统用直流转换开关.docx VIP
- ±800kV特高压直流输电线路工程导线选型研究-工硕士专业毕业论文.docx VIP
原创力文档

文档评论(0)