衡量网站性能时,并发数与吞吐量为何要分别考量?
私以为并发数与吞吐量是正相关的,并发数高,吞吐量必然高,何必多此一举?
按时间排序
定性的来说,在并发量较低的情况下,吞吐量与并发量成正比,此时后台处理能力充足。当并发量到达一定的数量后,服务器处理能力不足(线程切换),吞吐量反而降低。下面是我的一个案例```
./wrk -t12 -c400 -d30s --latency http://some-ip/workflow/api/v1/aaa?token=bb649dd808e9c7d9bc4109e
Running 30s test @ http://some-ip/workflow/api/v1/aaa?token=bb649dd808e9c7d9bc4109e
12 threads and 400 connections
Thread Stats
Latency Distribution
14519 requests in 30.08s, 4.22MB read
Socket errors: connect 155, read 0, write 0, timeout 0
Requests/sec:
Transfer/sec:
并发数 = Requests/sec * Latency(Avg) = 482.70 * 489.90/1000 = 188.66
./wrk -t12 -c500 -d30s --latency http://some-ip/workflow/api/v1/aaa?token=bb649dd808e9c7d9bc4109e
Running 30s test @ http://some-ip/workflow/api/v1/aaa?token=bb649dd808e9c7d9bc4109e
12 threads and 500 connections
Thread Stats
Latency Distribution
14495 requests in 30.10s, 4.22MB read
Socket errors: connect 251, read 0, write 0, timeout 0
Requests/sec:
Transfer/sec:
并发数 = Requests/sec * Latency(Avg) = 481.53 * 486.49/1000 = 234
并发数提高了,但是Requests/sec 反而降低了一些。
你应该对并发量理解有误。吞吐量是计算出来的,而则并发是源指标,如果你的系统存在某项瓶颈(而实际上一定有),达到资源瓶颈时,你的事务处理时间会随着并发数增大而变长,最终直观表现就是吞吐量到达天花板,甚至下降。我们不可能的无限提高瓶颈,所以要在这三个相关指标都维持在可接受范围内,做出取舍。我觉得问出这个问题,应该是片面认为事务处理时间或者干脆说RT是基本不变的,但这个指标我实际工作中的感觉才是最不稳定的,因为一切皆有瓶颈
假设并发为10,单个任务平均延迟为0.2秒,则每秒吞吐最大值就是50;假设并发为10,单个任务平均延迟为1秒,则每秒最大吞吐只有10;假设并发为1,单个任务平均延迟为0.1秒,则每秒最大吞吐还是10;吞吐量是由并发与延迟共同决定的,整个服务对客户的效率最终取决于吞吐量,而不是并发数。就像银行柜台可以同时开很多窗口,但如果每个窗口都做繁琐的开户操作,那么对等待的人来说,效率也是不高的。
为什么要分别考量?就是个rt问题。一条马路,2个车道,并发最高就只能为2。但是吞吐量呢,表示一段时间内通过的车辆数。如果2个车道都被堵住了,rt很大,那么并发为2,吞吐量为0;如果没有堵车,通过很快,rt很低,吞吐量就很高。所以,还是看rt。
并发数、吞吐量的概念最初用来衡量网络设备的性能,后来推广到服务器及业务上评估系统的整体性能。一、网络设备的并发数、吞吐量并发数(Concurrency):
也叫并发连接数,指网络设备所能处理的最大会话数量。这里的会话数是指请求-&响应一次会话。吞吐量(Throughput):
用户请求是由一个个数据包组成,网络设备(防火墙/路由器/交换机)对每个数据包的处理要耗费资源。吞吐量是指在不丢包的情况下单位时间内通过网络设备的数据包数量。网络层面并发数和吞吐量的关系:
并发数x包长度=吞吐量参考:可以看出,在网络层面考察吞吐量,除了并发数,还要考虑请求包的大小(长度)。用于度量网络设备时候,可以用byte/秒。二、服务器及业务上的并发数、吞吐量用于指网站性能/服务器性能时候:并发数:系统同时处理的请求数(分为查询类请求数、事务类请求数)。吞吐量:系统在单位时间内处理请求的数量。只不过是一个很宽泛的术语,大家经常指的吞吐量的单位可能是:TPS/QPS、页面数/秒、人数/天、处理业务数/小时等等。几个相关的概念:TPS、QPS、RPSTPS:Transactions Per Second(每秒事务处理数),指服务器每秒处理的事务次数。一般用于评估数据库、交易系统的基准性能。QPS:Queries Per Second(查询量/秒),是服务器每秒能够处理的查询次数,例如域名服务器、Mysql查询性能。RPS:Request Per Second(请求数/秒)RPS(Request Per Second)和QPS可以认为是一回事。RT:Response Time(响应时间):客户端发一个请求开始计时,到客户端接收到从服务器端返回的响应结果结束所经历的时间,响应时间由请求发送时间、网络传输时间和服务器处理时间三部分组成。也叫Think Time。并发数与TPS/QPS的关系:QPS(TPS)= 并发数/平均响应时间这里的并发数如果为事务处理请求数,则为TPS,如果为查询请求数,则为QPS。参考:回到题主的问题:并发数高,吞吐量是否必然高?个人觉得不一定。如果谈的是网络设备,参照:并发数x包长度=吞吐量,吞吐量依赖于并发数和包长度。如果谈的是服务器及完整整体性能,需要明确吞吐量的度量指标,假定以吞吐量以QPS作为度量指标,如果并发数高,但平均响应时间上不去,则QPS并不一定高。
俺不知道你说的这个并发数是什么... 所以我就先将你的并发数理解成TPS好了假设你有一个订单系统 TPS在3~4k 我们就理解成一分钟能处理180k的请求但是这些请求不是很平均的每秒给你发过来的 比如"秒杀" 是在一瞬间发生的 吞吐量在这里就有意义了如果说你的吞吐量为0 没有任何缓冲机制 那么超过你正常的负载程序就会崩溃如果你的吞吐量为200k 在处理性能没有变化的情况下 程序不会崩溃 并且能在一分钟内把这些请求处理掉
我觉得,并发数更多是看同一时刻能同时处理的数量。(比如双十一时峰值很大)吞吐量是一段时间内能处理的数量。(平时主要看这个)
已有帐号?
无法登录?
社交帐号登录&&国之画&&&& &&
版权所有 京ICP备号-2
迷上了代码!并发连接_百度百科
是指或代理服务器对其业务信息流的处理能力,是防火墙能够同时处理的连接的最大数目,它反映出防火墙设备对多个连接的能力和连接状态跟踪能力,这个参数的大小直接影响到防火墙所能支持的最大信息点数。
并发连接并发连接数
是衡量防火墙性能的一个重要指标。在目前市面上常见防火墙设备的说明书中大家可以看到,从低端设备的500、1000个并发连接,一直到高端设备的数万、数十万并发连接,存在着好几个数量级的差异。那么,并发连接数究竟是一个什么概念呢?它的大小会对用户的日常使用产生什么影响呢?要了解并发连接数,首先需要明白一个概念,那就是“会话”。这个“会话”可不是我们平时的谈话,但是可以用平时的谈话来理解,两个人在谈话时,你一句,我一句,一问一答,我们把它称为一次对话,或者叫会话。同样,在我们用电脑工作时,打开的一个窗口或一个Web页面,我们也可以把它叫做一个“会话”,扩展到一个局域网里面,所有用户要通过上网,要打开很多个窗口或Web页面发(即会话),那么,这个防火墙,所能处理的最大会话数量,就是“”。
并发连接并发连接表
像的存放路由信息一样,里也有一个这样的表,我们把它叫做并发连接表,是防火墙用以存放并发连接信息的地方,它可在启动后动态分配进程的内存空间,其大小也就是防火墙所能支持的最大。大的并发连接表可以增大防火墙最大并发连接数,允许防火墙支持更多的客户终端。尽管看上去,防火墙等类似产品的并发连接数似乎是越大越好。但是与此同时,过大的并发连接表也会带来一定的负面影响。
并发连接并发连接数的负面影响
并发连接内存消耗
以每个并发连接表项占用300B计算,1000个并发连接将占用300B×Mb内存空间,10000个并发连接将占用3Mb内存空间,100000个并发连接将占用30Mb内存空间,而如果真的试图实现1000000个并发连接的话那么,这个产品就需要提供0.3Gb内存空间!
并发连接影响CPU的处理能力
CPU的主要任务是把网络上的流量从一个网段尽可能快速地转发到另外一个网段上,并且在转发过程中对此流量按照一定的策略进行许可检查、流量统计和访问审计等操作,这都要求防火墙对并发连接表中的相应表项进行不断的更新读写操作。如果不顾CPU的实际处理能力而贸然增大系统的并发连接表,势必影响防火墙对连接请求的处理延迟,造成某些连接超时,让更多的连接报文被重发,进而导致更多的连接超时,最后形成雪崩效应,致使整个崩溃。
物理链路的实际承载能力将严重影响防火墙发挥出其对海量并发连接的处理能力
虽然目前很多都提供了10/100/1000Mbps的网络接口,但是,由于防火墙通常都部署在Internet出口处,在客户端PC与目的资源中间的路径上,总是存在着瓶颈链路----该瓶颈链路可能是2Mbps专线,也可能是512Kbps乃至64Kbps的低速链路。这些拥挤的低速链路根本无法承载太多的并发连接,所以即便是防火墙能够支持大规模的并发访问连接,也无法发挥出其原有的性能。
有鉴于此,我们应当根据网络环境的具体情况和个人不同的上网习惯来选择适当规模的并发连接表。因为不同规模的网络会产生大小不同的并发连接,而用户习惯于何种以及如何使用这些服务,同样也会产生不同的并发连接需求。高的设备通常需要客户投资更多的设备,这是因为并发连接数的增大牵扯到数据结构、CPU、内存、和等多方面因素。如何在合理的设备投资和实际上所能提供的性能之间寻找一个黄金平衡点将是用户选择产品的一个重要任务。按照并发连接数来衡量方案的合理性是一个值得推荐的办法。
以每个用户需要10.5个并发连接来计算,一个中小型企业网络(1000个信息点以下,容纳4个空间)大概需要10.5×个并发连接,因此支持2最大并发连接的设备便可以满足需求;大型的企事业单位网络(比如信息点数在之间)大概会需要105000个并发连接,所以支持0000最大并发连接的防火墙就可以满足企业的实际需要; 而对于大型电信运营商和ISP来说,电信级的千兆防火墙(支持0000个并发连接)则是恰当的选择。为较低需求而采用高端的防火墙设备将造成用户投资的浪费,同样为较高的客户需求而采用低端设备将无法达到预计的性能指标。利用网络整体上的并发连接需求来选择适当的产品可以帮助用户快速、准确的定位所需要的产品,避免对单纯某一参数“愈大愈好”的盲目追求,缩短设计施工周期,节省企业的开支。从而为企业实施最合理的安全保护方案。
在利用指标选择防火墙产品的同时,产品的综合性能、厂家的研发力量、资金实力、企业的商业信誉和经营风险以及产品线的技术支持和售后服务体系等都应当纳入采购者的视野,将多方面的因素结合起来进行综合考虑,切不可盲目的听信某些厂家广告宣传中的大并发连接的宣传,要根据自己业务系统、企业规模、发展空间和自身实力等因素多方面考虑。
并发连接SP2的TCP/IP并发连接数
众所周知,为了防范蠕虫病毒的传播和攻击,Windows XP SP2将并发线程最多限制为10个。SP2利用Messages动态链接库,来实时监控每个进程的并发目,一旦它发现某进程的线程数超过10个,就会屏蔽掉部分线程。SP2这样做,虽然可以防范类型的蠕虫病毒,加强系统安全,但是也带了一些负面影响,例如当你使用BT、P2P或 FlashGet软件下载时,部分线程将被屏蔽掉,因此下载速度会变得很慢。为此,你可以采取以下对策,来突破TCP,从而提高SP2的多线程访问速度
并发连接注册表修改法的误区
为了突破SP2对TCP的限制,网上曾经流传过一种修改的方法,操作步骤如下:
单击“开始”/运行,输入打开注册表,定位到\SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters下,修改的“TcpNumConnections”的键值,将之由10改为150,即设置最大并发连接数为150。
经过实际测试,我们发现该方法看起来有效,但实质上并不能突破并发连接数限制,提高SP2的多线程访问速度。因为SP2对线程数目的控制,是通过 “”这个系统文件来实现的,并不是通过实现的,因此,该方法不能增加SP2的TCP。
并发连接使用工具来替换Tcpip.sys
为了突破SP2的限制,正确地方法是修改Windows XP SP2的系统文件Tcpip.sys。Tcpip.sys是Windows XP SP2重要的系统文件,位于“C:\Windows\\drivers目录下。该文件由于平时受到系统保护,所以正常情况下你是无法替换它的,必须在或纯DOS模式下才能替换,建议你使用以下专门工具、来替换“”文件,操作步骤如下:
从网上下载替换工具(仅为30KB),用它来修改系统文件Tcpip.sys最大安全并发连接限制;然后备份一下C:\Windows\\drivers\Tcpip.sys文件。
接下来,双击打开下载文件ZIP压缩包,运行其中的替换工具EvID4226Patch.exe,随之将弹出一个命令行提示符窗口,首先显示 Windows当前的Tcpip.sys,以及并发连接的限制数值(默认为10);接着询问你是否将连接数限制在50(如下图1),你可以选择 “Yes/No/Change”,如果你输入“Y”,则会将改为“50”,如果想改为其他数(例如150),可以在提示符后输入“c”,然后输入最大的并发连接数(例如150)回车,最后在提示符下输入“Y”并回车,这样就替换了Tcpip.sys文件;Tcpip.sys文件被替换后,随之会弹出系统文件保护对话框,你可以点击“取消”按钮,然后点击“是”按钮,重新启动后,Tcpip.sys文件的替换就大功告成了!
现在你的最大并发连接数已超过10个,达到了150个,因此Windows XP SP2的多线程访问速度得到了提升,当你用FlashGet、BT等时,就不会感到的限制了。
并发连接DOS下修改Tcpip.sys文件
以上替换程序EvID4226Patch.exe也可以在DOS下使用,方法是:首先把EvID4226Patch.exe拷贝到C盘下;然后再进入DOS模式,进入C盘根目录,输入命令EvID4226Patch/L=$n$/w=C:\WINDOWS\\drivers/L= tcpip.sys即可修改Tcpip.sys文件。
注意:以上$n$为你要设置的最大安全连接数,假如要把最大设置为150个线程,那么输入命令EvID4226Patch/L=150/w=C:\WINDOWS\system32\drivers/L=tcpip.sys即可。
四、使用附带的工具
比特精灵附带的工具“连接数破解补丁”也可以替换Tcpip.sys,突破SP2的并发连接数限制。
从网上下载比特精灵()V2.7.2.225简体中文正式版,然后双击下载文件进行***。你可以选择***哪些组件(下图2),应该***“用于 Windows XP SP2的TCP/IP连接数破解补丁”,***结束后,XP中就会有BitSpirit程序组,单击其中的“XP SP2连接数破解补丁”,即可修改Tcpip.sys文件。
单击“XP SP2连接数破解补丁”,弹出该软件的界面,界面中列出了当前Tcpip.sys的版本、及最大(右图3),你可以在“TCP/IP Linitation”输入一个数,来设置最大并发连接数,例如输入150,然后按“Apply”按钮,重启系统后,你的SP2最大并发连接数就改为了 150。
以上几种方法虽然提高了Windows XP SP2的多线程访问速度,但却降低了SP2的安全性能,如果你的电脑感染了病毒和木马,过多地启用新线程,会加速病毒和木马地蔓延,因此你在追求网络下载速度的同时,也要注意网络安全。建议你及时***升级杀毒软件和防火墙,如果是普通用户,可以利用上面的方法,将最大设置为10~30, BT用户可以设置为100~150。
企业信用信息
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&