大型网站技术架构4

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

大型网站技术架构核心原理与案例分析4瞬时响应:网站的高性能架构4.1网站性能测试4.1.1不同视角下的网站性能4.1.2性能测试指标4.1.3性能测试方法4.1.4性能测试报告4.1.5性能优化策略4.2Web前端性能优化4.2.1浏览器访问优化4.2.2CDN加速4.2.3反向代理4.3应用服务器性能优化4.3.1分布式缓存4.3.2异步操作4.3.3使用集群4.3.4代码优化4.4存储性能优化4.4.1机械硬盘VS.固态硬盘4.4.2B+树VS.LSM树4.4.3RAIDVS.HDFS4.5小结4.1网站性能测试性能测试是性能优化的前提和基础,也是性能优化结果的检查和度量标准。不同视角下的网站性能有不同的标准,也有不同的优化手段。4.1.1不同视角下的网站性能1.用户视角的网站性能1通过鼠标或键盘发出请求操作2发送HTTP请求4通过屏幕看到响应信息3收到HTTP响应2.开发人员视角的网站性能开发人员关注的主要是应用程序本身及其相关子系统的性能,包括响应延迟,系统吞吐量、并发处理能力、系统稳定性等技术指标。主要的优化手段有使用缓存加速数据读取,使用集群推高吞吐能力,使用异步消息年加快请求响应及实现肖锋,使用代码优化运维人员更关注基础设施性能和资源利用率,如网络运营的宽带能力、服务器硬件的配置、数据中心网络架构、服务器和网络宽带的资源利用率等。主要优化手段有建设优化骨网、使用代码优化手段改善程序性能。用高性价比定制服务器、利用虚拟化技术优化资源利用等。4.1.2性能测试指标不同视角下有不同的性能指标,不同的标准有不同的性能指标,从开始和测试人员的角度,网站性能测试的主要指标有响应时间、并发数、吞吐量、性能计数器等操作响应时间打开一个网站几秒在数据库中查询一条记录十几毫秒机械磁盘一次寻址定位4毫秒从机械磁盘顺序读取IMB数据2毫秒从SSD磁盘顺序读取IMB数据0.3毫秒从远程分布式缓存Redis读取一个数据0.5毫秒从内存中读取IMB数据十几微秒Java程序本地方法调用几微秒网络传输2KB数据1微秒常用系统操作响应时间表4.1.3性能测试方法性能测试是一个总称,具体可细分为性能测试、负载测试、压力测试、稳定性测试。TPSabcdbcd性能测试负载测试压力测试系统资源性能测试曲线响应时间日常运行区间系统最佳运行点系统最大负载点系统崩溃点并发用户数4.1.4性能测试报告并发数响应时间(ms)TPS错误率(%)Load内存(GB)备注1050020058性能测试208003001010性能测试3010004021514性能测试40120045203016负载测试60200030405016压力测试80超时0100不详不详压力测试4.1.5性能优化策略1.性能分析检查请求处理的各个环节的日志,分析哪个环节响应时间不合理、超过预期;检查监控数据,分析影响性能的主要因素是内存、磁盘、网络、还是CPU,是代码问题还是架构设计不合理,或者系统资源确实不足。2.性能优化定位性能问题的具体原因后,就需要进行性能优化,根据网站分层架构,可分为Web前端性能优化、应用服务器性能优化、存储服务器性能优化3大类。4.2Web前端性能优化一般说来Web前端指网站业务逻辑之前的部分,包括浏览器、网站浏览器加载、网站视图模型、图片服务、CDN服务等,主要优化手段有优化浏览器访问、使用反向代理、CDN等。4.2.1浏览器访问优化减少http请求使用浏览器缓存启用压缩CSS页面最上面、JavaScript放在页面最下面减少Cookie传输4.2.2CDN加速静态资源访问网站用户动态资源访问网络服务提供商本地机房CDN服务器网站数据中心机房网站应用服务器数据更新4.2.3反向代理用户浏览器用户发起访问请求反向代理服务器请求转发请求转发请求转发Web服务器集群10.0.0.110.0.0.210.0.0.34.3应用服务器性能优化4.3.1分布式缓存网站性能优化第一定律:优先考虑使用缓存优化性能1.缓存的基本原理(“abc’’,“hello’’)Key=“abc”Value=“hello”计算key的HashCode“abc”HashCode=99012345678计算HashCode对应的Hash表索引99%8=3数据库应用程序1.读取数据2写入数据缓存3读取数据2.合理使用缓存频繁修改的数据没有热点的访问数据不一致与脏读缓存可用性产品在设计之初就需要一个明确的定位:什么产品要实现的功能,什么不是产品提供的特性。在漫长的生命周期中,会有形形色色的困难和诱惑来改变产品的发展方向,左右摇摆、什么都想做的产品,最后有可能成为一个失去生命力的四不像。缓存预热缓存穿透3.分布式缓存架构应用服务器1应用程序应用服务器2应用程序应用服务器3应用程序JbossCacheJbossCacheJbossCache更新同步更新同步更新同步需要更新同步的JbossCache4.Memcached应用服务器1应用服务器2应用程序memcached客户端Memcached服务器1memcached服务端进程不互相通信的MemcachedMemcached协议Memcached协议Memcached协议Memcached协议简单的通信协议丰富的客户端程序高性能的网络通信高效的内存管理互不通信的服务器集群架构Slab_calss[1]Slab_calss[2]Slab_calss[3]Slab_calss[4]Slab_calss[5]Slab_calss[6]……Slab_calss[m]slab[1]slab[2]slab[3]slab[4]slab[5]slab[6]……slab[n]chunk[1]chunk[2]chunk[3]chunk[4]chunk[5]chunk[6]……chunk[x]4.3.2异步操作1发送请求2保存数据3.接收响应用户网站应用服务器数据库服务器1.发送请求2发送消息3接收响应用户网站应用服务器消息队列服务器4保存数据数据服务器负载压力时间直接调用消息队列异步处理使用消息队列消除并发访问高峰4.3.3使用集群用户浏览器用户发起访问请求负载均衡服务器请求转发请求转发请求转发Web服务器集群10.0.0.110.0.0.210.0.0.3利用负数均衡技术改善性能4.3.4代码优化网站的业务逻辑实现代码主要部署在应用服务器上,需要处理复杂的并发事务。合理优化业务代码,可以很好地改善网络性能。不同编程语言的代码优化手段有很多,这里我们概要地关注比较重要的几个方面。1.多线程编程上,解决线程安全的主要手段有:•将对象设计为无状态对象•使用局部对象•并发访问资源时使用锁2.资源复用3.数据结构4.垃圾回收EdenSpaceFromToYoungGenerationOldGenerationJVM分代垃圾回收机制4.4存储性能优化4.4.1机械硬盘VS.固态硬盘机械硬盘结构图SDD硬盘4.4.2B+树VS.LSM树173581226294546379111415272848526785B+树原理示意图4.4.3RAIDVS.HDFSRAID类型访问速度数据可靠性磁盘利用率RAID0很快很低100%RAID1很慢很高50%RAID10中等很高50%RAID5较快较高(N-1)/NRAID6较快较(RAIDS)高(N-2)/N4.5小结前沿技术总是出现在前沿业务领域。近几年,以Google为首的互联网企业领跑IT前沿技术潮流,是因为互联网企业的业务发展远超传统IT企业领域,面临更多挑战,对IT系统提出了更高的要求。新技术的出现又会驱动企业开展新的业务。亚马逊等互联网公司利用自己的技术优势进军去也级市场,以技术驱动业务,开展云计算、SaaS等新兴IT业务,逐步蚕食IBM、HP、Oracle、微软等传统软件巨头的市场。11醉翁亭记1.反复朗读并背诵课文,培养文言语感。2.结合注释疏通文义,了解文本内容,掌握文本写作思路。3.把握文章的艺术特色,理解虚词在文中的作用。4.体会作者的思想感情,理解作者的政治理想。一、导入新课范仲淹因参与改革被贬,于庆历六年写下《岳阳楼记》,寄托自己“先天下之忧而忧,后天下之乐而乐”的政治理想。实际上,这次改革,受到贬谪的除了范仲淹和滕子京之外,还有范仲淹改革的另一位支持者——北宋大文学家、史学家欧阳修。他于庆历五年被贬谪到滁州,也就是今天的安徽省滁州市。也是在此期间,欧阳修在滁州留下了不逊于《岳阳楼记》的千古名篇——《醉翁亭记》。接下来就让我们一起来学习这篇课文吧!【教学提示】结合前文教学,有利于学生把握本文写作背景,进而加深学生对作品含义的理解。二、教学新课目标导学一:认识作者,了解作品背景作者简介:欧阳修(1007—1072),字永叔,自号醉翁,晚年又号“六一居士”。吉州永丰(今属江西)人,因吉州原属庐陵郡,因此他又以“庐陵欧阳修”自居。谥号文忠,世称欧阳文忠公。北宋政治家、文学家、史学家,与韩愈、柳宗元、王安石、苏洵、苏轼、苏辙、曾巩合称“唐宋八大家”。后人又将其与韩愈、柳宗元和苏轼合称“千古文章四大家”。关于“醉翁”与“六一居士”:初谪滁山,自号醉翁。既老而衰且病,将退休于颍水之上,则又更号六一居士。客有问曰:“六一何谓也?”居士曰:“吾家藏书一万卷,集录三代以来金石遗文一千卷,有琴一张,有棋一局,而常置酒一壶。”客曰:“是为五一尔,奈何?”居士曰:“以吾一翁,老于此五物之间,岂不为六一乎?”写作背景:宋仁宗庆历五年(1045年),参知政事范仲淹等人遭谗离职,欧阳修上书替他们分辩,被贬到滁州做了两年知州。到任以后,他内心抑郁,但还能发挥“宽简而不扰”的作风,取得了某些政绩。《醉翁亭记》就是在这个时期写就的。目标导学二:朗读文章,通文顺字1.初读文章,结合工具书梳理文章字词。2.朗读文章,划分文章节奏,标出节奏划分有疑难的语句。节奏划分示例环滁/皆山也。其/西南诸峰,林壑/尤美,望之/蔚然而深秀者,琅琊也。山行/六七里,渐闻/水声潺潺,而泻出于/两峰之间者,酿泉也。峰回/路转,有亭/翼然临于泉上者,醉翁亭也。作亭者/谁?山之僧/曰/智仙也。名之者/谁?太守/自谓也。太守与客来饮/于此,饮少/辄醉,而/年又最高,故/自号曰/醉翁也。醉翁之意/不在酒,在乎/山水之间也。山水之乐,得之心/而寓之酒也。节奏划分思考“山行/六七里”为什么不能划分为“山/行六七里”?明确:“山行”意指“沿着山路走”,“山行”是个状中短语,不能将其割裂。“望之/蔚然而深秀者”为什么不能划分为“望之蔚然/而深秀者”?明确:“蔚然而深秀”是两个并列的词,不宜割裂,“望之”是总起词语,故应从其后断句。【教学提示】引导学生在反复朗读的过程中划分朗读节奏,在划分节奏的过程中感知文意。对于部分结构复杂的句子,教师可做适当的讲解引导。目标导学三:结合注释,翻译训练1.学生结合课下注释和工具书自行疏通文义,并画出不解之处。【教学提示】节奏划分与明确文意相辅相成,若能以节奏划分引导学生明确文意最好;若学生理解有限,亦可在解读文意后把握节奏划分。2.以四人小组为单位,组内互助解疑,并尝试用“直译”与“意译”两种方法译读文章。3.教师选择疑难句或值得翻译的句子,请学生用两种翻译方法进行翻译。翻译示例:若夫日出而林霏开,云归而岩穴暝,晦明变化者,山间之朝暮也。野芳发而幽香,佳木秀而繁阴,风霜高洁,水落而石出者,山间之四时也。直译法:那太阳一出来,树林里的雾气散开,云雾聚拢,山谷就显得昏暗了,朝则自暗而明,暮则自明而暗,或暗或明,变化不一,这是山间早晚的景色。野花开放,有一股清幽的香味,好的树木枝叶繁茂,形成浓郁的绿荫。天高气爽,霜色洁白,泉水浅了,石底露出水面,这是山中四季的景色。意译法:太阳升起,山林里雾气开始消散,烟云聚拢,山谷又开始显得昏暗,清晨自暗而明,薄暮又自明而暗,如此暗明变化的,就是山中的朝暮。春天野花绽开并散发出阵阵幽香,夏日佳树繁茂并形成一片浓荫,秋天风高气爽,霜色洁白,冬日水枯而石底上露,如此,就是山中的四季。【教学提示】翻译有

1 / 26
下载文档,编辑使用

©2015-2020 m.111doc.com 三一刀客.

备案号:赣ICP备18015867号-1 客服联系 QQ:2149211541

×
保存成功