SlideShare ist ein Scribd-Unternehmen logo
1 von 51
如何架构和开发高性能 , 高伸缩性 WEB  应用系统 软件架构师  童景文
Agenda BASE 理论简介 :ACID  理论的另外选择 可伸缩性最佳实践准则 几点架构建议 经典架构 前言
前言 ,[object Object],[object Object],[object Object]
前言 ,[object Object]
前言 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Agenda BASE 理论简介 :ACID  理论的另外选择 可伸缩性最佳实践准则 几点架构建议 经典架构 前言
经典架构 ,[object Object],J2EE 架构经典实现:一般来说我们会使用 Structs/WebWork+Spring+Hibernate/iBitas  来进行实现, .NET 架构基本也是如此;并且会引入相应的 Ajax 框架(例如 YUI,DOJO,EXTJS,GWT,PROTYPE etc). 一种改良实现: UI( 用户界面逻辑)采用 php/asp.net/flex/html5 进行开发,业务逻辑层和数据访问层采用 JAVA 进行开发。 UI( 用户界面逻辑)层与业务逻辑层采用 REST WebService 进行集成。
经典架构 ,[object Object]
经典架构 ,[object Object]
经典架构 ,[object Object],[object Object]
经典架构 ,[object Object]
经典架构 ,[object Object]
Agenda BASE 理论简介 :ACID  理论的另外选择 可伸缩性最佳实践准则 几点架构建议 经典架构 前言
一个高伸缩性的 WEB 应用系统架构示例图
数据库层面 ,[object Object]
数据库层面 ,[object Object]
数据库层面 ,[object Object]
数据库层面 ,[object Object]
数据库层面 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
应用服务器层面 ,[object Object]
应用服务器层面 ,[object Object]
应用服务器层面 ( 仅适合 WAS 应用服务器 )— 动态缓存 ,[object Object]
应用服务器层面 ( 仅适合 WAS 应用服务器 )— 动态缓存 Web Output – HTML, servlet/JSP, JSF, AJAX, Web Services Business Logic – Command beans Data – Java objects, Persistence L2 cache NO CODING NO CODING
应用服务器层面 ,[object Object],[object Object]
HTTP Server 层面 ,[object Object]
HTTP  层面 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
代码安全 ,[object Object],[object Object],[object Object],[object Object],[object Object]
Agenda BASE 理论简介 :ACID  理论的另外选择 可伸缩性最佳实践准则 几点架构建议 经典架构 前言
可伸缩性最佳实践准则 ,[object Object],[object Object],[object Object],[object Object]
可伸缩性最佳实践准则 ,[object Object],[object Object],[object Object],[object Object],[object Object]
可伸缩性最佳实践准则 ,[object Object],[object Object],[object Object],[object Object]
可伸缩性最佳实践准则 ,[object Object],[object Object],[object Object]
可伸缩性最佳实践准则 ,[object Object],[object Object]
可伸缩性最佳实践准则 ,[object Object],[object Object]
可伸缩性最佳实践准则 ,[object Object],[object Object]
可伸缩性最佳实践准则 ,[object Object],[object Object],[object Object]
Agenda BASE 理论简介 :ACID  理论的另外选择 可伸缩性最佳实践准则 几点架构建议 经典架构 前言
BASE 理论简介 :ACID  理论的另外选择 ,[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object],[object Object],[object Object],[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object],C: Consistency  一致性  A: Availability  可用性 P: Tolerance of network Partition  分区容忍性
BASE 理论简介 :ACID  理论的另外选择 ,[object Object],但是对于一个高伸缩性的应用系统,必然会选择水平扩展策略也就是进行数据的水平切分分布到不同的数据库系统上  ;所以为了高性能我们必须放宽一致性(即允许瞬时不一致而最终会达到一致性),会尽量朝着  A 、 P  的方向设计,然后通过其它手段保证对于一致性的商务需求
BASE 理论简介 :ACID  理论的另外选择 ,[object Object],[object Object],[object Object],[object Object],[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object],[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object]
BASE 理论简介 :ACID  理论的另外选择 ,[object Object]
参考文档
参考文档 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Questions ?

Weitere ähnliche Inhalte

Was ist angesagt?

MySQL 網路參考架構
MySQL 網路參考架構MySQL 網路參考架構
MySQL 網路參考架構郁萍 王
 
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)vanadies10
 
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性SQLPASSTW
 
MySQL5.6新功能
MySQL5.6新功能MySQL5.6新功能
MySQL5.6新功能郁萍 王
 
淘宝双11双12案例分享
淘宝双11双12案例分享淘宝双11双12案例分享
淘宝双11双12案例分享vanadies10
 
资身Dba经验谈
资身Dba经验谈资身Dba经验谈
资身Dba经验谈yiditushe
 
雲端儲存初探
雲端儲存初探雲端儲存初探
雲端儲存初探beLIEve Liao
 
应用虚拟存储 缔造关键业务之路
应用虚拟存储 缔造关键业务之路应用虚拟存储 缔造关键业务之路
应用虚拟存储 缔造关键业务之路ITband
 
新浪微博大规模基于Docker的混合云应用实践 -王关胜
新浪微博大规模基于Docker的混合云应用实践 -王关胜新浪微博大规模基于Docker的混合云应用实践 -王关胜
新浪微博大规模基于Docker的混合云应用实践 -王关胜Weibo Corporation
 
3.架构设计篇2
3.架构设计篇23.架构设计篇2
3.架构设计篇2gavin shaw
 
1.基础篇 修改by徐定翔2 去掉批注
1.基础篇 修改by徐定翔2 去掉批注1.基础篇 修改by徐定翔2 去掉批注
1.基础篇 修改by徐定翔2 去掉批注gavin shaw
 
Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍Zhaoyang Wang
 
03.wls depoly jdbc
03.wls depoly jdbc03.wls depoly jdbc
03.wls depoly jdbcMeng He
 
P6 Primavera 客户端的安装和配置
P6 Primavera 客户端的安装和配置P6 Primavera 客户端的安装和配置
P6 Primavera 客户端的安装和配置epst
 
云计算与开源 刘黎明 世纪互联
云计算与开源  刘黎明  世纪互联云计算与开源  刘黎明  世纪互联
云计算与开源 刘黎明 世纪互联Liming Liu
 

Was ist angesagt? (15)

MySQL 網路參考架構
MySQL 網路參考架構MySQL 網路參考架構
MySQL 網路參考架構
 
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)
 
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
 
MySQL5.6新功能
MySQL5.6新功能MySQL5.6新功能
MySQL5.6新功能
 
淘宝双11双12案例分享
淘宝双11双12案例分享淘宝双11双12案例分享
淘宝双11双12案例分享
 
资身Dba经验谈
资身Dba经验谈资身Dba经验谈
资身Dba经验谈
 
雲端儲存初探
雲端儲存初探雲端儲存初探
雲端儲存初探
 
应用虚拟存储 缔造关键业务之路
应用虚拟存储 缔造关键业务之路应用虚拟存储 缔造关键业务之路
应用虚拟存储 缔造关键业务之路
 
新浪微博大规模基于Docker的混合云应用实践 -王关胜
新浪微博大规模基于Docker的混合云应用实践 -王关胜新浪微博大规模基于Docker的混合云应用实践 -王关胜
新浪微博大规模基于Docker的混合云应用实践 -王关胜
 
3.架构设计篇2
3.架构设计篇23.架构设计篇2
3.架构设计篇2
 
1.基础篇 修改by徐定翔2 去掉批注
1.基础篇 修改by徐定翔2 去掉批注1.基础篇 修改by徐定翔2 去掉批注
1.基础篇 修改by徐定翔2 去掉批注
 
Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍
 
03.wls depoly jdbc
03.wls depoly jdbc03.wls depoly jdbc
03.wls depoly jdbc
 
P6 Primavera 客户端的安装和配置
P6 Primavera 客户端的安装和配置P6 Primavera 客户端的安装和配置
P6 Primavera 客户端的安装和配置
 
云计算与开源 刘黎明 世纪互联
云计算与开源  刘黎明  世纪互联云计算与开源  刘黎明  世纪互联
云计算与开源 刘黎明 世纪互联
 

Andere mochten auch

vacanze 2008
vacanze 2008vacanze 2008
vacanze 2008040508
 
EUROTRANS Catalana y Balear, SL
EUROTRANS Catalana y Balear, SLEUROTRANS Catalana y Balear, SL
EUROTRANS Catalana y Balear, SLAlbert León
 
Garantir a autenticidade e o acesso continuado à
Garantir a autenticidade e o acesso continuado àGarantir a autenticidade e o acesso continuado à
Garantir a autenticidade e o acesso continuado àCristiana Freitas
 
AA5 - I1 EITM and the Use Case Factory
AA5 - I1 EITM and the Use Case FactoryAA5 - I1 EITM and the Use Case Factory
AA5 - I1 EITM and the Use Case FactoryDavid Messineo
 
a review study on fluoride toxicity in water and fishes current status
a review study on fluoride toxicity in water and fishes current statusa review study on fluoride toxicity in water and fishes current status
a review study on fluoride toxicity in water and fishes current statusIJEAB
 
J.06. la-iglesia_de_esmirna
J.06.  la-iglesia_de_esmirnaJ.06.  la-iglesia_de_esmirna
J.06. la-iglesia_de_esmirnaIBE Callao
 
Modificación propiedades metales
Modificación propiedades metalesModificación propiedades metales
Modificación propiedades metalesiesvaldehierro
 
DiscoverText Product Overview
DiscoverText Product OverviewDiscoverText Product Overview
DiscoverText Product OverviewStuart Shulman
 
Narciso.it
Narciso.itNarciso.it
Narciso.itciorci
 
Narciso.it il bello degli uomini
Narciso.it il bello degli uominiNarciso.it il bello degli uomini
Narciso.it il bello degli uominiciorci
 
花小錢廣告
花小錢廣告花小錢廣告
花小錢廣告shiehrm
 

Andere mochten auch (20)

vacanze 2008
vacanze 2008vacanze 2008
vacanze 2008
 
Psicolo e c
Psicolo e cPsicolo e c
Psicolo e c
 
EUROTRANS Catalana y Balear, SL
EUROTRANS Catalana y Balear, SLEUROTRANS Catalana y Balear, SL
EUROTRANS Catalana y Balear, SL
 
Natal Solidário 2011
Natal Solidário 2011Natal Solidário 2011
Natal Solidário 2011
 
SE ECM SUITE
SE ECM SUITESE ECM SUITE
SE ECM SUITE
 
Garantir a autenticidade e o acesso continuado à
Garantir a autenticidade e o acesso continuado àGarantir a autenticidade e o acesso continuado à
Garantir a autenticidade e o acesso continuado à
 
AA5 - I1 EITM and the Use Case Factory
AA5 - I1 EITM and the Use Case FactoryAA5 - I1 EITM and the Use Case Factory
AA5 - I1 EITM and the Use Case Factory
 
a review study on fluoride toxicity in water and fishes current status
a review study on fluoride toxicity in water and fishes current statusa review study on fluoride toxicity in water and fishes current status
a review study on fluoride toxicity in water and fishes current status
 
Greek Economic Crisis
Greek Economic CrisisGreek Economic Crisis
Greek Economic Crisis
 
Conflictmanagement
ConflictmanagementConflictmanagement
Conflictmanagement
 
First Essay
First EssayFirst Essay
First Essay
 
J.06. la-iglesia_de_esmirna
J.06.  la-iglesia_de_esmirnaJ.06.  la-iglesia_de_esmirna
J.06. la-iglesia_de_esmirna
 
Modificación propiedades metales
Modificación propiedades metalesModificación propiedades metales
Modificación propiedades metales
 
DiscoverText Product Overview
DiscoverText Product OverviewDiscoverText Product Overview
DiscoverText Product Overview
 
Narciso.it
Narciso.itNarciso.it
Narciso.it
 
Coders trust pitchdeck
Coders trust pitchdeck Coders trust pitchdeck
Coders trust pitchdeck
 
Question 1
Question 1Question 1
Question 1
 
Gr
GrGr
Gr
 
Narciso.it il bello degli uomini
Narciso.it il bello degli uominiNarciso.it il bello degli uomini
Narciso.it il bello degli uomini
 
花小錢廣告
花小錢廣告花小錢廣告
花小錢廣告
 

Ähnlich wie 如何架构和开发高性能,高伸缩性Web 应用系统

ASP.Net MVC2 简介
ASP.Net MVC2 简介ASP.Net MVC2 简介
ASP.Net MVC2 简介Allen Lsy
 
Great architect cn
Great architect cnGreat architect cn
Great architect cndrewz lin
 
众行业公司系统架构案例介绍
众行业公司系统架构案例介绍众行业公司系统架构案例介绍
众行业公司系统架构案例介绍mysqlops
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程yiditushe
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程appollo0312
 
构建高性能MySQL系统
构建高性能MySQL系统构建高性能MySQL系统
构建高性能MySQL系统jackbillow
 
Big Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDBBig Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDBMonster Supreme
 
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境drewz lin
 
Struts快速学习指南
Struts快速学习指南Struts快速学习指南
Struts快速学习指南yiditushe
 
Azure Data Lake 簡介
Azure Data Lake 簡介Azure Data Lake 簡介
Azure Data Lake 簡介Herman Wu
 
微服務的基礎建設 - Service Discovery, Andrew Wu
微服務的基礎建設 - Service Discovery, Andrew Wu微服務的基礎建設 - Service Discovery, Andrew Wu
微服務的基礎建設 - Service Discovery, Andrew WuAndrew Wu
 
王龙:百度数据库架构演变与设计
王龙:百度数据库架构演变与设计王龙:百度数据库架构演变与设计
王龙:百度数据库架构演变与设计YANGL *
 
網站設計100步
網站設計100步網站設計100步
網站設計100步evercislide
 
Ruby on rails部署
Ruby on rails部署Ruby on rails部署
Ruby on rails部署Deng Peng
 
大型互联网应用架构设计
大型互联网应用架构设计大型互联网应用架构设计
大型互联网应用架构设计thinkinlamp
 
海通证券金融云思考与实践(数据技术嘉年华2017)
海通证券金融云思考与实践(数据技术嘉年华2017)海通证券金融云思考与实践(数据技术嘉年华2017)
海通证券金融云思考与实践(数据技术嘉年华2017)Zhaoyang Wang
 
Java 与 云计算
Java 与 云计算Java 与 云计算
Java 与 云计算kevin huang
 
01 orm概述及持久化介绍
01 orm概述及持久化介绍01 orm概述及持久化介绍
01 orm概述及持久化介绍Zelin Wang
 

Ähnlich wie 如何架构和开发高性能,高伸缩性Web 应用系统 (20)

ASP.Net MVC2 简介
ASP.Net MVC2 简介ASP.Net MVC2 简介
ASP.Net MVC2 简介
 
Great architect cn
Great architect cnGreat architect cn
Great architect cn
 
众行业公司系统架构案例介绍
众行业公司系统架构案例介绍众行业公司系统架构案例介绍
众行业公司系统架构案例介绍
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程
 
构建高性能MySQL系统
构建高性能MySQL系统构建高性能MySQL系统
构建高性能MySQL系统
 
Big Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDBBig Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDB
 
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
Top100summit 腾讯-周健-服务化与体系化解决大量定制小项目开发困境
 
Struts快速学习指南
Struts快速学习指南Struts快速学习指南
Struts快速学习指南
 
Azure Data Lake 簡介
Azure Data Lake 簡介Azure Data Lake 簡介
Azure Data Lake 簡介
 
微服務的基礎建設 - Service Discovery, Andrew Wu
微服務的基礎建設 - Service Discovery, Andrew Wu微服務的基礎建設 - Service Discovery, Andrew Wu
微服務的基礎建設 - Service Discovery, Andrew Wu
 
王龙:百度数据库架构演变与设计
王龙:百度数据库架构演变与设计王龙:百度数据库架构演变与设计
王龙:百度数据库架构演变与设计
 
Design Pattern
Design PatternDesign Pattern
Design Pattern
 
網站設計100步
網站設計100步網站設計100步
網站設計100步
 
Ruby on rails部署
Ruby on rails部署Ruby on rails部署
Ruby on rails部署
 
大型互联网应用架构设计
大型互联网应用架构设计大型互联网应用架构设计
大型互联网应用架构设计
 
Ria lqj
Ria lqjRia lqj
Ria lqj
 
海通证券金融云思考与实践(数据技术嘉年华2017)
海通证券金融云思考与实践(数据技术嘉年华2017)海通证券金融云思考与实践(数据技术嘉年华2017)
海通证券金融云思考与实践(数据技术嘉年华2017)
 
Java 与 云计算
Java 与 云计算Java 与 云计算
Java 与 云计算
 
01 orm概述及持久化介绍
01 orm概述及持久化介绍01 orm概述及持久化介绍
01 orm概述及持久化介绍
 

如何架构和开发高性能,高伸缩性Web 应用系统