幼儿饰品瑜伽美体用品美文
快百科
美文创意
爱情通信
用品婚姻
爱好看病
美体软件
影音星座
瑜伽周边
星座办公
饰品塑形
搞笑减肥
幼儿两性
智家潮品

流量为王程序员如何打破秒原则技术

9月9日 牵手手投稿
  对于一个Web站点或是一个APP应用来说,当用户打开你的站点时,最在乎的并不是你提供的内容有多么的吸引人、内容质量有多么高,因为此时用户还没看见你的提供的内容,那么用户最在乎的是什么呢?是你站点加载速度和访问速度。
  有研究表明,大多数用户期望的网站加载时间是3秒,如果时间长过3秒,就会始流失57的用户。如果超过8秒,几乎所有用户会毫不犹豫的离开你的网站,这就是所谓的8秒原则。
  随着技术的日新月异,Web2。0的到来大大提高了网站与网民间之间的互动,可以提供直播、视频、图片等等多媒体方式,因此诞生了许多优秀的门户网站与企业网站。但是同时也带来了很多问题,其中最大的问题就是网站访问速度的问题,这个问题直接影响到网站的流量。
  众所周知,互联网时代是一个流量为王的时代,谁掌握了流量谁就能赚钱。那么如何解决网站访问慢的问题呢?
  要解决网站为什么访问慢,我们得了解,是什么原因会导致网络访问变慢,我总结下主要有以下几点:
  链路问题;
  不同运营商之间互相访问;
  DNS解析问题;
  服务器系统存在瓶颈导致差导致的访问慢;
  程序问题的访问慢。
  链路问题
  举个例子,假设杭州的一个网友小李,他通过手机访问一家图片类的网站,但是这家网站的服务器是在北京,如图所示:
  他怎么访问到这台服务器的呢?首先,小李从他的设备打开浏览器访问对应的网站,此时数据就会从网卡将请求发出去,假设小李从客户端连接的是WiFi,就会首先从WiFi对应的路由器将数据转发出去,然后经过运营商的网络,这中间会经过很多个大大小小的路由设备,最终将数据传递到对应的网站服务器,如图所示:
  这就好比你从杭州买个高铁票到北京,中间经过很多个站点,比如上海站、山东站等,这一个一个的站点就可以理解为一个一个的路由器。需要注意的是,上图所示的只是客户端将数据发送给服务器的过程,那么服务器收到数据之后就会与客户端建立经典的TCP握手,也就是收到客户端发送的SYN标志位,然后会回复客户端SYNACK,此时数据又从服务器对应的机房出口路由器一层一层的返回给客户端。一来一回,你是不是感觉这个过程很慢,事实上这确实是比较慢。但是网络的传输速度还是比现实中坐高铁快得多的,所以这个过程可能也就需要几秒的时间。
  众所周知,2个不同路由器下的设备如果要进行通信,就必须要需要使用IP地址,在IPV4协议的报头中有一个字段叫TTL,即TimeToLive的缩写,该字段指定IP包被路由器丢弃之前允许通过的最大网段数量。TTL的最大值是255,一般推荐值是64。这个值越大说明经过的路由越多,延迟也就越大。
  在IP数据包从源到目的的整个转发路径上,每经过一个路由器,路由器都会修改这个TTL字段值,具体的做法是把TTL的值减1,然后再将IP包转发出去。如果在IP包到达目的IP之前,TTL减少为0,路由器将会丢弃收到的TTL0的IP包并向IP包的发送者发送ICMPtimeexceeded消息。
  比如我们要ping百度从下面就可以看到ttl等于54:
  pingwww。baidu。com
  PINGwww。a。shifen。com(180。97。33。107)56(84)bytesofdata。
  64bytesfrom180。97。33。107(180。97。33。107):icmpseq1ttl54time12。4ms
  64bytesfrom180。97。33。107(180。97。33。107):icmpseq2ttl54time12。2ms
  64bytesfrom180。97。33。107(180。97。33。107):icmpseq3ttl54time12。0ms
  64bytesfrom180。97。33。107(180。97。33。107):icmpseq4ttl54time11。9ms
  不过,如果客户端在请求时,中间某个路由器设备或网络线路出现故障,那么就无法正常建立连接了。这个时候就会出现丢包,如果丢包率达到100,就说明这个网站是完全无法访问,我们可以通过mtr或traceroute等命令来确认从客户端到达目标网络中间链路是否丢包是否延迟很大。
  其中的Loss列如果对应的行出现丢包率100就说明该行对应的IP地址所在的路由设备出现问题,从而导致无法继续将数据转发出去了。
  Keys:HelpDisplaymodeRestartstatisticsOrderoffieldsquit
  PacketsPings
  HostLossSntLastAvgBestWrstStDev
  1。???
  2。10。206。48。650。03601。31。41。03。30。2
  3。115。238。120。1490。03601。41。91。010。70。7
  4。115。238。120。1010。03601。61。71。111。21。0
  5。220。191。200。2430。03605。46。35。0105。57。0
  6。202。97。33。16136。536016。217。712。0311。634。1
  7。202。102。73。1500。036015。422。613。8220。322。7
  8。???
  9。180。97。32。102100。036024。730。314。391。116。8
  10。???
  不同运营商之间互相访问
  还有一种情况就是不同运营商的网络之间访问也会导致访问延迟变大,从而导致请求丢包或连接被拒绝。
  在国内,不同运营商之间的网络走的线路是不一样的,假设小李是使用的中国移动的网络,而他访问的目标网站是一个中国联通的服务器,由于存在这种问题就会导致请求变得非常慢或直接无法访问。
  要解决这个问题就是服务器选择BGP(边界网关协议,BorderGatewayProtocol)线路的机房,BGP是互联网上一个核心的去中心化自治路由协议,它可以很好地解决不同运营商之间的访问延迟大等问题。
  DNS解析问题
  不同的DNS服务器解析得到的IP结果是不一样的。一般情况下,如果不主动配置,运营商会默认给客户端分配一些运营商自己的DNS服务器,这些服务器由于更新缓存慢,也会导致无法访问等情况出现。因此建议客户端配置公共的DNS服务器,例如114。114。114等DNS地址。
  服务器本身性能问题
  如果服务器的访问量过大,就会导致系统CPU、内存、磁盘IO、网络IO飙高,也会导致请求被中断,从而无法正常请求无法被处理从而导致报错,例如HTTP报5XX的错误。
  应用本身问题
  如果一个网站服务器存在大量的图片则会导致浏览器加载变慢,从而导致访问慢,另外一些html文件或jscss文件没有经过压缩也会导致文件变大,从而导致加载时间变长,亦或者程序的某个方法写的有问题导致请求时间过长等等。
  我们可以通过例如Chrome等浏览器的开发者模式来确认到底是那些文件加载时间过长,从而针对性的进行优化。
  如何优化?
  那么怎么优化呢?首先,可以通过配置Web服务器的缓存规则来实现对一些静态资源进行缓存,从而达到快速访问的效果。例如nginx中通过如下配置,实现将制定的文件进行缓存30天。
  location。。(gifjpgjpegpngbmpswf)
  {
  expires30d;
  }
  location。。(jscss)?
  {
  expires30d;
  }
  当文件被缓存后,请求就不会直接去磁盘获取文件,从而减小IO资源的消耗。
  其次,可以配合CDN来实现加速,CDN全称是ContentDeliveryNetwork,即内容分发网络。
  CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度、缓存等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。使用CDN可以大大降低客户端到达服务器的网络延迟。
  另外,对系统进行监控,判断瓶颈在哪里并进行必要的升级或水平扩容,从而达到降低系统负载。
  此外,服务端如果有多台服务器,也可以针对不同运营商的请求使用DNS分发到不同的区域或不同的运营商从而达到降低负载以及解决不同运营商之间访问慢的问题。
  最后,可以对应用程序本身进行检查,比如是否是哪个方法或调用出现问题导致的访问变慢。
  作为码一代,想教码二代却无从下手:
  听说少儿编程很火,可它有哪些好处呢?
  孩子多大开始学习比较好呢?又该如何学习呢?
  最新的编程教育政策又有哪些呢?
投诉 评论 转载

我和猪猪侠的故事晚上,爸爸跟我说:你这个小朋友,明天一定要好好考试!你呀!就像‘猪猪侠’整天就想着打败怪兽!爸爸说着说着我就进入了梦乡。五灵威力!变身!哎呀!这是哪呀!突然,我的面前啊!……牛气发动机也有金牌了1月14日,由商用汽车新闻主办、苏州达菲特过滤技术股份有限公司协办的第五届我信赖的商用车动力评选颁奖典礼在北京举行,行业领导、专家、学者、用户以及来自发动机生产企业、物流企业的……扁扁造句用扁扁造句大全【扁扁binbin】:1。扁,不厚。1开始采毛豆了,我先仔细观察毛豆的大小,知道了扁扁的毛豆是没有成熟的;肚子圆鼓鼓的毛豆是已经成熟了。接着我用小手亲自去采圆鼓鼓的毛豆。……纺织与装备投资两重天纺织行业痼疾依旧,缺乏产业扶持政策,投资风险仍然很大。装备制造行业的振兴规划将使全行业受益,一些子行业投资机会开始显现。2月4日,国务院总理温家宝主持召开国务院常务会议,……流量为王程序员如何打破秒原则技术对于一个Web站点或是一个APP应用来说,当用户打开你的站点时,最在乎的并不是你提供的内容有多么的吸引人、内容质量有多么高,因为此时用户还没看见你的提供的内容,那么用户最在乎的……秋游今天,我们去虎跑泉秋游了。虎跑泉位于西湖之南,大慈山定慧禅寺内。性空、济颠、弘一,三位名僧曾经在此居住过。一进大门,我就看见了三个大字虎跑泉,只见那三个大字苍劲有力的写在……读西游记有感厚厚的名著,小小的无奈,长长人性的寄托。题记《西游记》可以说是一篇家喻户晓,脍炙人口的小说,从电视到书本,无数次感受师徒四人的历险和性格,在童年的记忆之中很多都与《西游记……孕妇可以吃月饼吗孕妇过量吃月饼危害多孕妇可以吃月饼吗孕妇是可以吃月饼的,但必须要少吃。孕妇吃月饼是吸收不到什么营养的,若是过量食用只会影响孕妇健康,得不偿失,所以想吃月饼的孕妈妈必须要有讲究的吃月饼。另外,……鸽子冬天会正常下蛋吗鸽子冬天也是会正常下蛋的,它们一年四季都可以下蛋。冬天的天气比较寒冷,所以相对于夏天来说,它们孵蛋的时间会更长一些。冬天它们孵蛋最多要二十天左右,二十天后主人们就可以看到小鸽子……老年人中风抽搐怎么办中风出现的症状是多样的,比如有的出现肢体不便,偏瘫,有的出现语言障碍,而有的也会出现面部抽搐的症状,其实这也即是脸部中风面瘫的表现,患者除了会出现脸部抽搐外,五官有时可能还会有……馆藏民国时期救亡曲研究洛阳民俗博物馆2011年征集到一本纸质的民国时期《救亡曲》,中华民国二十五年(1936年)十二月由山西牺牲救国同盟会下属政治机构山西省临时村政协助员训练委负会印发。曲本为蓝色封……学科专业职业辨析身为高校教师,经常会被人问起:你们学校哪个学科是重点学科,哪个专业比较好,XX专业毕业生一般从事哪些职业等类似问题。在回答问题的过程中,深感很多人对于学科、专业、职业这几个概念……
白发娘亲今又重阳越有造句用越有造句大全碳氢化合物对大气有哪些影响非主流时代我们主流的过衰老是从心开始的老人要引起注意评论大赛兴趣班未必不能与童年快乐相伴我的爱在现实的阳光里融化咽喉炎吃什么汤比较好未来的智能汽车慢性病老人不能吃什么呢十二星座男谁最有魅力最容易被女生贴上标签的星座男
全铜花洒头哪家好全铜花洒头好品牌推荐图文老人要长寿五个“不能等”人工授精后能吃辣的吗首心理治疗音乐彼得一世税收处罚决定书诉讼期是多久?佣金造句用佣金造句大全和蒋介石斗了一辈子的白崇禧,被发现时尸身发绿,到底是谁下的手垃圾拼多多,请滚出我的生活民事诉讼提起反诉要注意哪些问题?曾借壳上市无果,被传与券商合并,首创证券IPO获证监会受理艾尔登法环剧透?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找漯河衢州兴义眉山桂林阳泉玉溪简阳山东遂宁永城新余梧州洛阳泸州温州临汾清远营口常熟浙江大连桐乡宜昌