分布式计算存储架构设计方案.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《分布式计算存储架构设计方案.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分布式 计算 存储 架构 设计方案
- 资源描述:
-
1、分布式架构设计分布式架构设计主题主题目录目录概念普及1架构演变2SOA服务治理(Dubbo)3项目重构体系4项目管理体系5概念普及概念普及1.性能、并发性能、并发瓶颈瓶颈问题问题 2.缓存缓存、算法、算法、性能性能 3.监控监控(安全、性能(安全、性能)4.数据库、文件服务系统、消息服务数据库、文件服务系统、消息服务5.集群、集群、负载负载、容错、代理、注册中心、容错、代理、注册中心 6.持续持续集成、集成、部署部署概念普及概念普及-1性能、并发性能、并发瓶颈瓶颈问题问题 概念普及概念普及-2缓存缓存、算法、锁、算法、锁、性能性能 v缓存缓存客户端缓存、web代理(Squid)边缘缓存(CDN
2、)平台缓存(EHcache,Cacheonix,Voldemort,JBoss Cache)应用缓存(memcached、Redis)、数据库缓存v算法算法线性结构与顺序表、单向链表、循环链表、栈的基本概念链式堆栈、中缀表达式、队列、链式队列、串、MyString矩阵类、递归算法、哈夫曼树、希尔排序、Hash算法等内容等v锁概念锁概念数据库,共享锁、悲观所、乐观锁、排他、读写等、锁的粒度JAVA,自旋锁、悲观锁、乐观锁、对象锁等v性能性能应用划分系统层次、算法层次、代码层次调优分层设计调优、代码调优、内存调优、数据库调优、操作系统调优概念普及概念普及-3监控监控(安全、性能(安全、性能)监控基
3、本分网路监控、系统监控。涉及监控基本分网路监控、系统监控。涉及CPU、内存、磁盘、网、内存、磁盘、网络流量、系统进程及络流量、系统进程及Swap状态的多种性能指标状态的多种性能指标Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级开源运维平台,也是目前国内互联网用户中使用最广的监控软件。Nagios是一款开源的企业级监控系统 Cache)。阿里云监控是一款免费网站监控产品,可监控站点和服务器,并提供多种告警方式:短信,旺旺,邮件。百度云观测是百度推出的一款云服务产品,类似于360云监控、阿里云监控,主要是为站长提供免费的一站式网站监测、预警服务,功能覆盖网站运行状况、
4、安全和访问速度等多个方面。概念普及概念普及-4数据库数据库 GraphDB概念普及概念普及-5集群、集群、负载负载、容错、代理、注册中心、容错、代理、注册中心概念普及概念普及-6持续持续集成、集成、部署部署 1、开发流程阶段:编码-构建-集成-测试-交付-部署2、需要具备:自动化测试、版本控制工具(Git,CVS,SVN 等);自动化的构建和软件发布流程(Jenkins)3、持续集成的优点:快速(减少大量重复工作)、稳定、安全 Docker结合结合Jenkins的持续构建的持续构建方案方案 架构演变架构演变前言前言 v 单架构问题单架构问题复杂应用的开发维护成本变高,部署效率逐渐降低团队协作效
5、率差,部分公共功能重复开发,代码重复率居高不下系统可靠性变差维护和定制困难新功能上线周期变长v 分布式架构优势分布式架构优势廉价高效消除单故障点平衡负载、提高应用的性能降低耦合度拆分,分而治之架构演变架构演变-1初始阶段架构初始阶段架构 特征:应用程序、数据库、文件等所有的资源都在一台服务器上架构演变架构演变-2应用服务和数据服务分离应用服务和数据服务分离 特征:应用程序、数据库、文件分别部署在独立的资源上架构演变架构演变-3使用缓存改善性能使用缓存改善性能 特征:数据库中访问较集中的一小部分数据存储在缓存服务器中,减少数据库的访问次数,降低数据库的访问压力架构演变架构演变-4使用应用服务器集
6、群使用应用服务器集群特征:多台服务器通过负载均衡同时向外部提供服务,解决单台服务器处理能力和存储空间上限的问题架构演变架构演变-5数据库读写分离数据库读写分离特征:多台服务器通过负载均衡同时向外部提供服务,解决单台服务器处理能力和存储空间上限的问题,数据读写瓶颈得到缓解架构演变架构演变-6反向代理和反向代理和CDN加速加速特征:采用CDN和反向代理加快系统的 访问速度架构演变架构演变-7分布式文件系统和分布式数据库分布式文件系统和分布式数据库特征:数据库采用分布式数据库,文件系统采用分布式文件系统架构演变架构演变-8使用使用NoSQL和搜索引擎和搜索引擎特征:系统引入NoSQL数据库及搜索引擎
7、架构演变架构演变-9业务拆分业务拆分特征:系统上按照业务进行拆分改造,应用服务器按照业务区分进行分别部署架构演变架构演变-10分布式服务分布式服务特征:公共的应用模块被提取出来,部署在分布式服务器上供应用服务器调用架构演变架构演变-11结论要点结论要点 v 空间换时间空间换时间多级缓存、静态化、索引v并行与分布式计算并行与分布式计算任务切分、分而治之多进程、多线程并行执行v多维度的可用多维度的可用负载均衡、容灾、备份读写分离依赖关系v伸缩伸缩拆分、无状态v资源优化利用资源优化利用系统容量有限原子操作与并发控制基于逻辑的不同,采取不一样的策略容错隔离、资源释放SOA服务治理(服务治理(Dubbo
8、)-1什么是什么是DubboDubbo是是Alibaba开源的分布式服务框架,它最大的特点开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(服务提供方(Provider)和服务消费方()和服
9、务消费方(Consumer)两)两个角色个角色。Dubbox是是Dubbo升级版,现当当技术团结任在升级版,现当当技术团结任在维护的版本。国外比较有影响力的类似服务维护的版本。国外比较有影响力的类似服务Spring Cloud。SOA服务治理(服务治理(Dubbo)-2什么是什么是Dubbov 分布式服务框架分布式服务框架 远程服务调用 Netty/Mina/Grizzly RMI/Hessian/WebService 服务动态发现 Zookeeper/Redis 集群软负载均衡 Random/RoundRobin 集群失败容错 Failover/Failbackv服务治理平台服务治理平台 依
10、赖关系与关键路键 服务路由与动态配置 服务降级与资源劣化 权重调节与容量评估 服务授权与黑白名单 服务SLA与流程管理 服务测试与Mock 服务文档与负责人 SOA服务治理(服务治理(Dubbo)-3为什么使用为什么使用Dubbov 优点:优点:远程通讯:提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模式的信息交换方式。软负载均衡及容错机制:提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。可在内网替代F5等硬件负载均衡器,降低成本,减少单点。服务自动注册与发现:基于注册中心目录服务,使服务消费方
11、能动态的查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器。提供完善的管理控制台dubbo-admin与简单的控制中心dubbo-monitor。Dubbo提供了伸缩性很好的插件模型,很方便进行扩展。支持多协议。v 使用方法使用方法Dubbo采用全spring配置方式,透明化接入应用,对应用没有任何API侵入。只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载。SOA服务治理(服务治理(Dubbo)-4Dubbo服务框架服务框架-1ServiceConsumerDubboRegistryServiceProviderDubbo Invo
12、kerDubbo Exporter2.启动时订阅服务地址1.启动时注册服务地址4.随机调用一个服务地址,失败重试另一地址3.变更时推送服务地址列表DubboMonitor5.后台定时采集服务调用次数和调用时间等信息长连接短连接SOA服务治理(服务治理(Dubbo)-5Dubbo服务框架服务框架-2SOA服务治理(服务治理(Dubbo)-6Dubbo服务框架服务框架-3v服务接口层(服务接口层(Service):该层是与实际业务逻辑相关的,根据服务提供方和服务消费方的业务设计对应的接口和实现。v配置层(配置层(Config):对外配置接口,以ServiceConfig和ReferenceConf
13、ig为中心,可以直接new配置类,也可以通过spring解析配置生成配置类。v服务代理层(服务代理层(Proxy):服务接口透明代理,生成服务的客户端Stub和服务器端Skeleton,以ServiceProxy为中心,扩展接口为ProxyFactory。v服务注册层(服务注册层(Registry):封装服务地址的注册与发现,以服务URL为中心,扩展接口为RegistryFactory、Registry和RegistryService。可能没有服务注册中心,此时服务提供方直接暴露服务。v集群层(集群层(Cluster):封装多个提供者的路由及负载均衡,并桥接注册中心,以Invoker为中心,扩
14、展接口为Cluster、Directory、Router和LoadBalance。将多个服务提供方组合为一个服务提供方,实现对服务消费方来透明,只需要与一个服务提供方进行交互。v监控层(监控层(Monitor):RPC调用次数和调用时间监控,以Statistics为中心,扩展接口为MonitorFactory、Monitor和MonitorService。v远程调用层(远程调用层(Protocol):封将RPC调用,以Invocation和Result为中心,扩展接口为Protocol、Invoker和Exporter。Protocol是服务域,它是Invoker暴露和引用的主功能入口,它负责
展开阅读全文