最新大型网站技术架构探讨.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
大型网站架构的目标与挑战 网站架构演变及其技术脉络 架构设计理论与原则 讨论及总结 网站架构演变及其技术脉络 ■[Step1]Web动静态资源分离及其与DB物理分离 优点:“简单”、安全性提高 缺点:存在单点,谈不上高可用性(high availability架构目标) 技术点:应用设计要保证可扩展(framework很重要Spring/Beetle)、Web Server动/静态资源分离 Web Server(Apache\Nginx\IIS\JBoss…)、 Database Server(Mysql\Oracle\Redis…) ■[Step1]技术点—Web动静态资源分离 img,doc,js,css等静态资源使用单独的Web HTTP Server处理请求 动态页面静态化处理 网站架构演变及其技术脉络 ■[Step2]采取缓存处理 优点:简单有效、维护方便 缺点:依然存在单点 技术点:客户端(浏览器)缓存、前端页面缓存、页面片段缓存、本地数据缓存/数据库缓存 网站架构演变及其技术脉络 减少对网站的访问 减少对Web应用服务器的请求 减少对数据库的查询 减少文件系统I/O操作 ■[Step2]技术点—客户端(浏览器)缓存 技术点说明 根据HTTP协议特性,修改Header参数(Cache-Control、Expires、Pragma、Last-Modified、Etag),让浏览器来缓存页面(一些优秀开发框架会对此做透明的封装,例如:Beetle)/Protocols/rfc2616/rfc2616-sec14.html 使用HTTP1.1协议,由于http pipelining技术特性,能够使用get请求的决不采取post请求 为了节约带宽,压缩页面(Content-Encoding: gzip);页面各个元素能“小”即“小”,例如:js包压缩,js合并,图片压缩等 会话状态信息采取Cookie代替传统使用服务器Sessions对象存储习惯做法;使用Ajax实现页面局部刷新 如果可能,可采取浏览器插件技术突破浏览器功能限制,将原本在服务 器端运算,尽量迁到浏览器端。ActiveX/Applet/Flash/…. HTML5 最值得期待,她的出现必定改变整个Web世界 能够让浏览器缓存的数据一定要缓存;浏览器能够处理的运算,决不放在服务器端来处理。 网站架构演变及其技术脉络 ■[Step2]技术点—前端页面缓存 采用具备缓存功能的http反向代理服务器作前端页面缓存器, Varnish\Squid\Ncache\AiCache(商业)…【硬件F5】 网站架构演变及其技术脉络 ■[Step2]技术点—页面片段缓存ESI(Edge Side Includes) ESI需要服务器端支持,常见apache(mod_esi)、WebLogic、 JSP标签库(JESI)等。 网站架构演变及其技术脉络 ■[Step2]技术点—本地数据缓存 需要从数据库系统和Web应用服务器两个层面考虑缓存优化 网站架构演变及其技术脉络 技术点说明 关系数据库系统(如:Oracle\MySql)Query Cache策略:一般以sql为key来缓存查询结果,尽量不要拼sql,使用PreparedStatement的“?”模式sql;Query Cache大小要根据数据库系统具体情况合理设置,过大只会浪费内存,参考值:128M 关系数据库系统Data Buffer策略:就是数据库数据内存缓存器,其访问命中率决定数据库性能,可根据实际物理内存大小适量增大,如:MySql建议buffer值为物理内存60-80% 应用服务器Cache包括:对象缓存(例如:对象线程安全,做成单例),更新频率不大数据考虑缓存(如:基表数据、配置文件信息),考虑使用线程池,对象池,连接池等 常见java解决方案:map\OSCache\EHCache等 ■[Step3]增加机器做HA、数据库读写分离 网站架构演变及其技术脉络 优点:增加服务器和HA机制,系统性能及可用性得到保证 缺点:读写分离,增加程序难度,架构变复杂,维护难度增加 技术点:负载均衡、DAL、数据库读写分离 ■[Step3]技术点—负载均衡 网站架构演变及其技术脉络 类型 说明 DNS负载均衡 实现简单、有Cache缺乏灵活性,但对分区域(如构建CDN方案)访问简单有效 反向代理软件 HAProxy、Nginx、Apache、Lighttpd等 硬件产品 F5、NetScaler等 LVS(Linux Virtual Server) / SMART Client 自己写代码某些情况下简单有效 ■[Step3]技术点—数据库读写分离及DAL 网站架构演变及其技术脉络 ■读写分离逻辑分批 ■负载均衡 ■失

文档评论(0)

一天一点 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档