收藏 分享(赏)

开源的SaaS解决方案_0.9.ppt

上传人:精品资料 文档编号:10800361 上传时间:2020-01-10 格式:PPT 页数:60 大小:4.91MB
下载 相关 举报
开源的SaaS解决方案_0.9.ppt_第1页
第1页 / 共60页
开源的SaaS解决方案_0.9.ppt_第2页
第2页 / 共60页
开源的SaaS解决方案_0.9.ppt_第3页
第3页 / 共60页
开源的SaaS解决方案_0.9.ppt_第4页
第4页 / 共60页
开源的SaaS解决方案_0.9.ppt_第5页
第5页 / 共60页
点击查看更多>>
资源描述

1、,SaaS关键技术 -开源解决方案,Copyright 2009 Neusoft Corporation,解决方案技术中心,Part 1:IT部署视图演化及挑战 Part 2:动态基础设施 Part 3:SaaS架构关注技术 Part 4: Q&A,IT系统部署视图演化-1,N轮视图演化后架构,演化面对的挑战,Part 1:IT部署视图演化及挑战 Part 2:动态基础设施 Part 3:SaaS架构关注技术 Part 4: Q & A,云计算关键特性,基础设施供应生命周期,资源池动态伸缩,Cloud,Cloud,Part 1:IT部署视图演化及挑战 Part 2:动态基础设施 Part 3:

2、SaaS关注技术 Part 4:Q&A,SaaS关键特性,高伸缩:多租户,功能可配置,流程可配置,SaaS 架构关注内容,数据存储的挑战,传统解决方案VS 新兴解决方案,SQL集群技术-MySQL,Google MySQL MMM技术,Sharding vs Partition,数据切分-SQL,垂直sharding,user,phr,App,DAL,水平sharding,Phr 33%,Phr 33%,App,DAL,Phr 34%,读写分离,phr,phr,App,DAL,读/写,读,SQL数据访问区域(DAL),1.mysql proxy 实现“读写分离(Read/Write Split

3、ting)”。基本的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询。数据库复制被用来把事务性查询导致的变更同步到集群中的从数据库。2.AmoebaAmoeba项目是分布式数据库 proxy 开发框架。座落与Client、DB Server(s)之间。对客户 端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请 求多台数据库合并结果。 主要解决: * 降低 数据切分带来的复杂多数据库结构 * 提供切分规则并降低 数据切分规则 给应用带来的影响 * 降低db 与客户端的连接数 * 读写分离 3.Websphere II,Case 1,C

4、ase 1,数据生成分布规则: 按照20会员每天采集一次监控,每次采集10个指标(都为数值型)计算,按照20万会员2010年全年的数据量,共计生成 7.3 亿条记录。分布在4个节点中,每台设备1.825亿条。共计50GB。,Sql 数据扩展问题,Case 2 hadoop HBase& Hive,2003年Google三篇论文:GFS,MapReduce,Bigtable Hbase是一个分布式开源数据库,基于Hadoop分布式文件系统,模仿并提供了基于Google文件系统的Bigtable数据库的所有功能。 其目标是处理非常庞大的表,可以用普通的计算机处理超过10亿行数据,并且有数百万列元素

5、组成的数据表。MapReduce是分布式计算软件构架,它可以支持大数据量的分布式并行处理。,Hadoop 软件栈,Table & Column Family,Row Key: 行键,Table的主键,Table中的记录按照Row Key排序 Timestamp: 时间戳,每次数据操作对应的时间戳,可以看作是数据的version number Column Family:列簇,Table在水平方向有一个或者多个Column Family组成,一个Column Family中可以由任意多个Column组成,即Column Family支持动态扩展,无需预先定义Column的数量以及类型,所有Col

6、umn均以二进制格式存储,用户需要自行进行类型转换。,Case 2 hadoop HBase& Hive,Case 2 - hadoop & Hive,SQL 与NoSQL整合方案- hadoop & Hive,1.DBMS保存全部数据,主要完成交易类数据的读写 2.通过同步技术把DBMS的数据同步到NoSQL数据库中 3.NoSQL负责完成历史数据的查询统计分析等工作,NoSQL数据库-MongoDB,MongoDB 与MySQL混搭,采用MySQL与mongoDB混搭的模式,利用NoSQL数据 的列可以动态扩展的优势来避免在关系数据库为了 扩展所采用行转列导致的数据爆炸性增长的问题 1.面

7、向集合的存储:适合存储对象及JSON形式的数据。 2.动态查询:Mongo支持丰富的查询表达式。 3.完整的索引支持:包括文档内嵌对象及数组。Mongo的查询优化 器会分析查询表达式 4.复制及自动故障转移。,不适用: 高度事务性的系统 传统的商业智能应用,SQL数据库扩展的问题,ID 100,ID200,App,DAL,ID300,ID400,NoSQL数据库扩展,phr,phr,App,DAL,phr,phr,数据缓存工作原理,第一次,从数据库读取数据,并写入缓存 第二次,从缓存读取数据,如果数据不存在,那么,在去数据库查询数据,目的: 避免磁盘IO提高效率,减轻数据库压力,开源缓存对比,

8、云平台缓存方案,客户端,App Server,Memcache,EHCache,Memcache,Memcache,Memcache,App Server,EHCache,采用Memcached 作为分布式缓存 为了保证系统执行效率采用ehCache作为二级缓存 在ehcache设置缓存时间,过期后到Memcached组成的缓存池获得数据。,该方案也可以采用Terracotta,应用服务服务区域,业务系统的主要业务逻辑运行在应用服务器中,所以,它承担了更大的压力,面临如下挑战:1.大并发访问需要做应用服务器集群 2.系统为了更可用性和友好性支持无缝切换,应用服务器session管理,云下有状态

9、应用方案-memached-session,客户端,App Server,Memcache,Memcache,Memcache,Memcache,App Server,memcached-session-manager具有如下特性: 1.支持tomcat6和tomcat7 2.能够保持sticky会话和none sticky会话 3.能够支持tomcat失败转移 4.能够支持Memcached失败转移 5.实现session序列化 6.可以实现session的异步存储 7.Session修改更新Memcached 8.JMX管理和监控,云下有状态应用方案 - Terracotta,客户端,Ap

10、p Server,Terracoatt,Terracoatt,Terracoatt,Terracoatt,App Server,1.Terracotta 本身支持集群,避免单点故障(双机或者多机镜像) 2. Terracotta的基础是分布式数据共享和线程协同 3.不是通过对象序列化的方式传输,支持Field级别的变更同步 4.不需要修改程序 5.支持目前主流的中间价,agent,agent,Web server区域,Apache vs Nginx vs lighttpd 反向代理等功能1.作为老牌HttpServer,Apache Httpd在功能表现上令人满意,配置相对简单,功能丰富并且稳

11、定,可以任意编译添加所需功能的模块。 2.Nginx作为新兴的HttpServer,在性能表现上令人满意,功能相对丰富,作为功能相对简单的应用前台HttpServer是可以推荐的,而且HttpServer可以做到动态更改配置文件,不需要长时间中断服务。 3.Lighttpd性能表现很好,但是在功能上有很多不稳定之处。,Web server静态资源分离,静态资源(图片,js脚本,css等)使用单独的服务器处理请求,浏 览 器,静态资源,静态资源,动态请求,动态请求,动态请示,动态请示,分布式文件作用,SaaS业务系统面临着海量小图片数据的存储问题,这些图片数据大小在几K几十K不等但数目非常庞大,

12、处理这些海量数据小文件传统文件系统已经不能满足要求,系统在scaling的过程中都遇到了这样的问题:磁盘IO过高;备份困难;单点问题,容量和读写无法水平扩展,还存在故障的可能。使用分布式存储技术来解决图片数据管理和容量扩展等方面的问题,分布式文件系统工作原理,存储节点,即Storage Cluster,完成文件管理的所有功能。包括存储、同步和提供存取接口;同时通过对meta data的管理实现了IO的并行和高效访问。 具有云存储虚拟、自治、高效特点的实验项目,支持多盘组、异构整合。 Tracker,即跟踪器主要负责IO调度,通过负载均衡方式实现可靠、快速的资源存取。Client可以是以Serv

13、ice的方式对云存储提供IO服务。,MogileDFS VS FastDFS,Case3 GIS系统地图栅格数据测试,消息队列,程序解耦 消息可靠性到达 异步通信提供效率,企业级消息队列,1.消息严格的排序; 2.支持事务 3.信息通过持久化的方式保证安全可靠代表产品: 1.Apache ActiveMQ 2.Jboss MQ 3.IBM MQ 4.Weblogic JMS适合场景: 企业级应用中消息可靠传输,互联网消息队列,1.消息不需要严格的排序; 2.不支持事务大多数情况可接受 3.读写数据非常快 4.横向扩展性好代表产品: Kestrel适合场景: 1.互联网应用中消息动态,Case4

14、 Kestrel性能表现,负载均衡区域,http重定向 DNS负载均衡 反向代理负载均衡 IP负载均衡对应产品包括: nginx apache httpd LVS(网络第四层工作) F5(硬件,四层/七层) redware (硬件,四层/七层),LVS结构,工作模式:Virtual Server via Network Address Translation(VS/NAT)Virtual Server via IP Tunneling(VS/TUN) Virtual Server via Direct Routing(VS/DR),LVS HA结构,Case5 熙康数据上传业务,Case5 熙

15、康数据上传业务,该架构主要分为如下几个部分: 引入LVS主备的负载均衡模式 引入基于LVS的Tomcat负载均衡 引入ActiveMQ 的Master/Slave的模式 引入基于MMM的MySQL高可用模式 引入基于Spring的多线程技术 红色部分可以考虑在未来架构中引入Memcached 为了更好的利用系统资源,LVS,tomcat,ActiveMQ等均部署在基于XenServer的虚拟机上。,Case5 测试结果,其它技术,单点登陆 CMS Portal等,Part 1:IT部署视图演化及挑战 Part 2:动态基础设施 Part 3:SaaS关注技术 Part 4:Q&A,Copyright 2009 Neusoft Corporation,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报