免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1675 | 回复: 1
打印 上一主题 下一主题

[DNS] WEB性能优化(一) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-02-17 22:27 |只看该作者 |倒序浏览
又上chinaunix了,老看帖子太没意思,整理出来一个东西,给大家看看,大家有兴趣多讨论讨论。
     
     要说web还是先从TCP/IP协议说起来的好(要丢也丢好的鸡单嘛,不要丢烂的),关于这方面的知识大家参考《TCP/IP详解卷一》就好了,这里就不在多说了,只发一张图来说明,如下(图1)

     
图1 OSI模型
    这里要说的是一般OSI模型都按照这个方式来划分,由于数据都是从7层往下一直到1层变成正负的电压进行传递,然后再逆向转换过来,所以在这7层当任何一层都是非常重要的,都有优化的余地,今天主要说的就是下4层。
   

    关于1,2层涉及到接入,当然是带宽越快越好了,不过在带宽之外还有一个很重要的因素就是丢包率,丢包率的大小在很大程度上也会对WEB性能产生非常大的影响,关于这些我们在后面再说。第3层就是IP了,在互联网上目前也就是IPV4了,基本上没什么可说了,除非你用ipv6,IPV6同样也是可以提高WEB性能的,但是目前意义不大,后面我们也简单的提到。所以还剩下第4层了,我们这里注重来看看第4层是怎么影响WEB性能的。第4层说来主要就是TCP协议了,关于TCP协议,大家参看下图(图2)


   
     
图2 TCP的三次握手
    TCP协议的三次握手,这个在这里不在解释,不明白的参看《TCP/IP详解卷一》(本人推荐安装一个sniffer自己查看一下数据包)。WEB都是采用的是TCP连接,这点无庸质疑,但是这样也存在一个问题,就是每次TCP连接必须进行三次握手,实际上HOST A发送请求到和HOST B握手成功一般需要等待两个响应时间(实际上有的时候web的GET请求可以和最后一个确认的ack包一起发送,但是这样会给 D.O.S攻击留下隐患,因为我们暂时不讲安全问题,在这里不多说),下图是1K字节的数据通过一个TCP连接在2.4G的带宽上传输的时候理论上的速度和响应时间的图。

图三 RTT的速度
    在这个图当中,我们可以看到当系统的响应时间越短那么每个TCP单位时间内传输的数据也会越多,而这个变化是非线性的。

    在实际的TCP协议当中,还有另外两个主要方面的控制:1)单个包的大小。实际上每个数据包的大小是多少是有服务器和客户机进行协商出来的,由于IPV4头的限制最大的数据包只能是2的16次方即65536字节,所以最大的IPV4数据报不超过7K,这样可以对照上面的表计算一下在2.4G带宽下一个TCP连接最快的传输速率是多少。2)TCP的窗口大小。这个同样是有服务器端和客户端进行协商的,窗口是递增的直到会传输重发机制(是重发,不一定是丢包),而在这里下层的丢包率就对windows窗口会产生非常大的影响。关于这方面的内容详细部分参考《TCP/IP详解卷一》。把所有的部分综合起来得到下面的图(图4):


图4 TCP与丢包率与网络响应时间的关系

    从图中我们就可以看到丢包率对TCP网络的重要性,因此在优化的时候我们可以先丛这些方面着手:
    1)减少丢包率。选用的好的交换机和ISP看起来会花很多钱,但有的时候却能够让你得到成倍的速度的提高。
    2)减小响应时间。有的时候带宽的确是很高,但是服务器的负载太高,响应时间很慢,同样也会影响服务器的吞吐量。尽量把你的服务器响应时间控制到100个ms吧。
    3)使用cache增大吞吐量。磁盘I/O总是会在不知不觉的情况下消耗你几十个MS。
    4)减少互联互通问题。后面再说。
    好了,不写了,写东西真累。
------------------------
my blog:http://spaces.msn.com/members/ge126/

论坛徽章:
0
2 [报告]
发表于 2005-02-22 19:13 |只看该作者

WEB性能优化(一)

看来楼主还得继续认真看书阿。。。

另外,㰔主你的帖子发错版了。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP