- 1、本文档共154页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
;目录;大型网站架构的目标与挑战;大型网站架构的目标与挑战;大型网站架构的目标与挑战;大型网站架构的目标与挑战;;网站架构演变及其技术脉络;■[Step1]技术点—Web动静态资源分离;■[Step2]采取缓存处理;■[Step2]技术点—客户端(浏览器)缓存;■[Step2]技术点—前端页面缓存;■[Step2]技术点—页面片段缓存ESI(Edge Side Includes);■[Step2]技术点—本地数据缓存;■[Step3]增加机器做HA、数据库读写分离;■[Step3]技术点—负载均衡;■[Step3]技术点—数据库读写分离及DAL;■[Step4]CDN、分布式缓存、分库;■[Step4]技术点—CDN;■[Step4]技术点—分布式缓存;■[Step4]技术点—分库;■[Step4]技术点—分库;■[Step5]多个数据中心,向分布式存储和计算的架构体系迈进;■[Step5]技术点—向分布式存储计算解决方案[DFS、Map/Reduce、Key-Value DB];凡客关键系统架构; 订单面临的矛盾 ;热数据DB(SQL Server,NoSQL);基于消息队列的订单处理机制;订单处理流程的现有机制;订单处理流程的现有机制;基于消息队列的订单处理机制;订单处理流程的改进方案;订单处理流程的改进方案;订单处理流程的改进方案;订单处理流程的改进方案;订单处理流程的改进方案;订单处理流程的改进方案;消息队列选择;订单处理流程的改进方案;订单处理流程的改进方案;订单处理流程的改进方案;基于消息队列的订单处理机制;Hadoop集群架构;数据导入方案;数据导入方案;数据导入方案;数据导入方案;数据导入方案;数据导入方案;数据导入方案;数据导入方案;数据导入方案;统计分析方案;统计分析方案;统计分析方案;统计分析方案;统计分析方案;统计分析方案;统计分析方案;统计分析方案;统计分析方案;淘宝系统架构概述;架构规定了软件的高层划分及各部分间的交互
架构不是软件,但架构决策体现于软件平台和框架之中
架构的优劣决定了业务应用系统的实施能力和发展空间
技术搭台,业务唱戏 ? 架构搭台,应用唱戏
架构永远在随着业务的发展而变迁– 拥抱变化!;;Perl,CGI……
Mysql
Apache
服务器在美国,56KModem,远程开发、测试、部署;Java服务器使用线程性能比cgi技术使用进程好
Java相比Perl,可维护性好,开发效率高
Java开始在国内流行;开始使用Java
模板技术采用WebMacro
中间层采用Servlet技术,使用POJO封装业务逻辑和数据访问
使用BizObj对象封装基本业务逻辑和数据访问方法
其它业务对象继承BizObj方法,实现自己的业务逻辑和数据访问方法
使用JDBC访问数据库
Servlet容器使用resin,Web服务器使用Apache;;表现层仅仅使用模板技术,缺乏MVC框架,导致大量的servlet配置
业务逻辑层和数据访问层耦合,可维护性和可扩展性差
受到EJB风潮的影响
;表现层采用WebX
模板技术Velocity
在Turbine基础上开发了自己的服务框架和一系列公共服务
通过一个delegate对象访问业务逻辑层
业务逻辑层使用EJB(SLSB,CMP,DAO等)
通过一个fa?ade对象供表现层delegate访问
Fa?ade对象访问多个SLSB实现的controller对象实现业务逻辑
使用CMP实现单条记录的增加和删除
考虑性能,在CMP之外封装DAO对象通过JDBC访问数据库
EJB服务器使用Weblogic
Web服务器使用Apache;;Turbine的发展缓慢
EJB配置复杂,可维护性差
重量级框架,业务侵入高
高度容器依赖,可测试性差
CMP性能差,导致DAO和CMP并存;表现层使用WebX和Service 框架
Velocity模板技术
自有服务框架及多种公共服务:Form Service,Template Service,Mail Service,Rundata Service,Upload Service等
通过command模式和biz层交互
无状态Web应用,基于cookie实现session,获取线性扩展性
业务逻辑层使用Alibaba Service框架,并且引入spring 框架
Spring容器和Alibaba Service框架无缝集成
AO,BO
使用分布式cache缓存对象
数据访问层
透明的事务处理
引入Hibernate和iBatis,以iBatis为主;;数据库成为瓶颈 - 分布式数据库
应用耦合严重 - SOA
Pampas平台;中文站会员数超过2000万
中文站Offer已经超过1.5
文档评论(0)