




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
可扩展Web架构探讨,echouzhou,高性能网站每秒能处理成千上万个请求,关键是Scalability良好的可伸缩性Caching无处不在的缓存,Scalability,是系统适应不断增长用户数量的能力性能平稳负载均衡、容错接入保护、Cache缓冲扩容容易所有组件都应当可以简单扩展无共享架构可控状态,VerticalScaling,更大的服务器更快的CPU扩展性/价格比很差超级计算机都是平行扩展的!,可伸缩性vs.高性能,在系统可扩展的前提下提高性能,Web的可扩展性,Web服务器负载均衡南北互通,Web服务器,Web服务器的选择,Apache不适合静态文件的支持内存、CPU占用比较大非常成熟,功能强大,配置丰富TWS架构中心自主开发对CGI的支持比较独特CGI性能非常好Qhttpd公司内部软件只适合静态文件的支持非常稳定可靠Lighttpd、Nginx内存、CPU开销小静态文件性能胜出很多越来越多的网站开始用它,性能改进,动态、静态内容分开静态文件:qhttpd/lighttpd/nginx动态内容:Apache某些静态文件压缩传输:lighttpd的mod_compress动态内容性能提升传统CGIPHP、Rails、SSIFastCGITWSCGI,FastCGI,出现很早的技术减少传统CGI调用的消耗基本保持源代码级的兼容性#include#includeWhile(FCGI_Accept()=0)/CGI代码,FastCGI的配置,负载均衡技术,负载均衡(LoadBalancing),是可扩展性的关键提高网站的可用性接入保护、失效检测,DNS轮询,是最简单的负载均衡域名设置多条A记录,DNS轮询,硬件负载均衡,CiscoAlteonFoundryF5,软件负载均衡,免费解决方案LinuxVirturalServer基于内核,通过修改TCP/IP数据报文实现负载均衡,确保可用性的守护进程ldirectord高性能,部署相对麻烦,不便于观察HAproxy基于layer7效率相对较低,部署容易,有web界面便于观察,Layer4,TCP层的交换根据源/目的地址和端口进行负载均衡负载均衡策略round-robin最少连接,Layer7,基于HTTP请求最常用的是URL分发,南北互通,双线服务器,多个IP地址一个IP地址,多个路由深南花园:电信、网通、教育网三通机房北方网通访问深圳网通仍然很慢,动态DNS,根据来自不同ISP的用户接入到就近的服务器公司自己开发的动态DNS软件自己开发的DNS服务器IP地址库和IP测速存在业务分布的问题,CDN,ContentDeliveryNetwork就近接入代理缓存域名解析增加CNAME即可,Caching,WebCache的类型,浏览器Cache私有缓存可以缓存“private”响应CacheProxySurrogates-缓存代理Web加速共享缓存只能缓存“public”响应,一些数据,多至43%的Web请求访问不可缓存的内容Web缓存命中率为40%左右是比较现实的,页面静态化,理想状态:静态化所有页面实际做不到如何静态化?由模板生成静态页面定时或有更新时困难:成千上万个页面的静态化不现实页面有变体,不适合静态化多台服务器维护麻烦页面既包含静态内容,又包含动态内容,页面缓存,按需静态化前端cache存储动态页面内容mod_cacheSquidVarnish*遵循HTTP的Cache规范可精细控制CacheExpiresCache-control适合GET类CGI请求,HTTP的Cache规范,要充分发挥Cache的效用,就必须了解HTTPCache规范和机制条件请求ExpirationCache-controlCookie,条件请求,If-Modified-Since/Last-Modified1.服务器响应:200OKLast-Modified:2.浏览器请求GETHTTP/1.1If-Modified-Since:3.服务器响应200OK或304NotModified,条件请求(2),If-None-Match/ETag1.Server响应200OKETag:abcdef2.浏览器请求GETHTTP/1.1If-None-Match:abcdef3.Server响应200OK或304NotModified,Expiration,Expires设置对象的绝对失效时间是HTTP/1.0规范max-age是Cache-control的一个指令设置对象的年龄(秒数)是HTTP/1.1规范max-age优先于Expires,Cache-control,no-cache=Set-cookie浏览器和squid都不可以缓存再次使用前需发送条件请求max-age=NNN指定缓存有效时间(秒)public浏览器和squid都可以缓存max-age指定缓存时间private只有浏览器可以缓存,Cookies,HTTP请求携带Cookies:Cookie:name=profile,domain=,path=mysecrets.html,cookie=day-traderHTTP响应设置Cookies:Set-cookie:name=profile,domain=,path=mysecrets.html,cookie=day-traderCachedcontent需要的时候才设置Cookies太理想化Squid添加一个IMS头,一些典型的Cache场景,返回个人信息Cache-control:private,max-age=NNNCGI写操作Cache-control:no-store,no-cacheCGI获取状态等信息Cache-control:public,max-age=NNN,QQvideo实践分享,QQvideoWeb架构图,实践要点,3DNS+HAProxy实现负载均衡、接入保护动态、静态文件分用不同服务器首页静态化某些频繁调用CGI:Squid缓存视频播放:CDN加速缩略图:Squid缓存Web数据缓存:Memcached,QQvideo的一些数据,HAProxy:每天转发HTTP请求:5500万CPU占用率:1020%增加图片图片Squid:命中率:90%增加图片Memcached:命中率:40%左右增加图片,相关软件介绍,HAProxy,http:/haproxy.1wt.eu特色L7交换采用epoll,效率很高配置简单灵活,部署很容易Gracefulrestart不影响已有连接Web监控界面清晰直观内容分发(ContentSwitching)ACL定义规则ACL灵活组合选择分发backend请求/响应头改写负载均衡和过载保护负载均衡策略:加权round-robin、Source、URLStickysessions接入连接数限制后端服务器健康监测,HAproxy与LVS比较,HAProxy效率不如LVSUser级vs.内核级HAProxy部署简单一个程序vs.内核patchHAProxy功能丰富L7vs.L4HAProxy性能可满足大部分网站需要,达到较大规模时可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年压疮护理新进展
- 客户开发工作总结案例
- 电梯安全培训
- 儿童财商教育课件
- 内科护理10分钟小讲课
- 仓储物流中心厂房出租与仓储服务外包协议
- 心梗老人的护理
- 知识产权采购合同范本:电子元器件行业
- 创新型企业厂房物业管理及创新解决方案合同范本
- 物业服务企业人力资源配置合同
- 2023年泸州市文化和旅游系统事业单位招聘笔试模拟试题及答案
- 医疗器械行业市场部人员岗位职责
- (中医内科)高级、副高级职称考试模拟试题及答案
- 跌倒坠床原因分析预防措施
- 部编版小学道德与法治三年级下册期末质量检测试卷【含答案】5套
- 弱电施工安全技术交底
- DB21T 3354-2020 辽宁省绿色建筑设计标准
- 安全生产知识应知应会
- 08S305-小型潜水泵选用及安装图集
- 体育器材采购设备清单
- 二手车鉴定评估报告书最终
评论
0/150
提交评论