吞吐量

分组交换网中的时延、丢包和吞吐量

梦想的初衷 提交于 2019-12-04 18:07:04
目录 分组交换网中的时延、丢包和吞吐量 一、时延概述 1. 处理时延 2. 排队时延 3. 传输时延 4. 传播时延 二、排队时延 三、丢包 四、端到端时延 五、计算机网络中的吞吐量 分组交换网中的时延、丢包和吞吐量 因特网的存在,为运行在端系统上的分布式应用提供了很好的服务。希望能通过因特网在任意两个端系统之间移动数据且不丢失数据,理想很美好,可现实却很难达到。因为,计算机网络中必然会限制端系统之间的吞吐量(每秒能够传送的数据量),在端系统之间引入时延,实际上也会丢失分组,这是难免的。 由于分组交换凭借其更好的带宽共享服务以及更高效简单的模式,电信网络已经向着分组交换的方向高速发展,所以了解分组交换就显得非常重要,接下来整篇都将对分组交换网络进行探究。 一、时延概述 分组由源出发,通过一系列路由器传输,在目的地结束,在这一过程中,经受着各种各样的时延。端到端时延(即源向目的地传输分组的总时延)由众多节点时延组成。 1. 处理时延 检查分组首部,决定分组导向需要的时间。 检查比特级别的差错需要的时间。 2. 排队时延 分组在链路上等待传输的时间。 取决于前期到达的正在排队等待向链路传输分组的数量。 当然数量越少,当然排队时延越小咯。 3. 传输时延 是将所有分组的比特推向链路的时间。 是分组长度和链路传输速率之间的函数,与路由器之间距离无关。 4. 传播时延 比特上路后

理解Latency和Throughput

谁都会走 提交于 2019-12-03 15:35:38
Latency,中文译作延迟。Throughput,中文译作吞吐量。它们是衡量软件系统的最常见的两个指标。 延迟一般包括单向延迟(One-way Latency)和往返延迟(Round Trip Latency),实际测量时一般取往返延迟。它的单位一般是ms、s、min、h等。 而吞吐量一般指相当一段时间内测量出来的系统单位时间处理的任务数或事务数(TPS)。注意“相当一段时间”,不是几秒,而可能是十几分钟、半个小时、一天、几周甚至几月。它的单位一般是TPS、每单位时间写入磁盘的字节数等。 思考一个问题: 低延迟一定意味着高吞吐量吗?如果不是,试举出反例。 假如有一个网站系统,客户端每次请求网站服务端,网络传输时间(包括往返)为 200ms,服务端处理请求为10ms。那么如果是同步请求,则延迟为210ms。此时如果提高网络传输速度,比如提高到100ms,那么延迟为110ms。这种情况减少延迟似乎确实可以一定程度提高吞吐量,原因主要在于:系统性能瓶颈不在于服务端处理速度,而在于网络传输速度。 继续假设将同步请求改为异步请求,那么现在延迟为100ms,延迟降低了,但吞吐量保持不变。所以这是一个反例。 除了上面这个反例外,还有一个更生动的反例: 火车、飞机运煤: 从山西到广州运煤,一列火车100小时(包括往返)可以运输10000t煤,而一架飞机20小时(包括往返)可以运输100t煤

Jmeter:实例(测试报告)

怎甘沉沦 提交于 2019-12-03 15:28:08
PX**APP 性能测试报告 V1.0 编写人: JLL 编写时间: 2018 年 2 月 10 日 审核人: 审核时间: 2018 年 月 日 PXZC管理有限公司(**运营中心) 二零一八年二月十日 修订记录 版本号 修订章节号 修订人 修订日期 V1.0 新建 JLL 2018.2.10 目 录 1 项目概述... 1 1.1 项目标识... 1 2 测试范围... 1 2.1 测试内容... 1 2.2 测试类型... 1 2.3 测试目标... 1 2.3.1 产品列表查询... 1 2.3.2 注册及实名认证... 2 2.3.3 查看产品详情及预约产品... 3 3 测试准备... 3 3.1 测试依据... 3 3.2 测试资源... 4 3.2.1 硬件配置... 4 3.2.2 软件配置... 5 3.2.3 网络配置... 5 3.3 测试工具... 5 3.4 人员配置... 5 3.5 人员分工... 6 3.6 测试执行... 6 4 执行结果... 6 4.1 产品列表... 6 4.1.1 并发用户数分析... 8 4.1.2 响应时间分析... 9 4.1.3 吞吐量分析... 10 4.2 注册及实名认证... 11 4.2.1 并发用户数分析... 12 4.2.2 响应时间分析... 14 4.2.3 吞吐量分析... 16 4.3 产品预约

性能专题:一文搞懂性能测试常见指标

末鹿安然 提交于 2019-12-03 11:18:32
1. 前言 上周,对性能测试系列专题,在公号内发表了第一篇介绍: 【性能系列连载一】开篇:性能测试不可不知的“干货” ,但反响貌似并不太好,但既然此前已答应了部分读者要连载分享性能这块的知识,含着泪也得继续写。 性能测试的基础: 就是在确保功能实现正确的前提下,通过合适的性能测试加压方式和策略,并收集考察服务端应用程序的各项性能指标,以及服务器硬件资源的使用情况,来评估是否存在性能问题隐患。 那今天作为性能测试系列的第二篇,主要会为大家介绍在 服务端性能测试 中,常见的性能指标有哪些。 2. 性能指标分类 从性能测试分析度量的度角来看,可以从如下几个维度来收集考察各项性能指标: 系统性能指标 资源性能指标 中间件指标 数据库指标 稳定性指标 可扩展性指标 可靠性指标 下面将从如上这几个维度,分别从各自维度常见指标,以及指标含义、指标行业参考标准等方面进行介绍。 3. 系统性能指标 系统性能指标,常见的可从如下几类进行参考: 响应时间 系统处理能力 吞吐量 并发用户数 错误率 3.1 响应时间 定义和解释: 响应时间,简称RT。是指系统对请求作出响应的时间,可以理解为是指用户从客户端发起一个请求开始,到客户端接收到从服务器端返回的响应结束,整个过程所耗费的时间。直观上看,这个指标与人对软件性能的主观感受是非常一致的,因为它完整地记录了整个计算机系统处理请求的时间。

Kafka、RabbitMQ、RocketMQ等消息中间件的介绍和对比(转)

二次信任 提交于 2019-12-03 10:55:51
前言 在分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦。现在开源的消息中间件有很多,前段时间产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注。 概念 MQ简介 MQ,Message queue,消息队列,就是指保存消息的一个容器。具体的定义这里就不类似于数据库、缓存等,用来保存数据的。当然,与数据库、缓存等产品比较,也有自己一些特点,具体的特点后文会做详细的介绍。 现在常用的MQ组件有ActiveMQ、RabbitMQ、RocketMQ、ZeroMQ、MetaMQ,当然近年来火热的kafka,从某些场景来说,也是MQ,当然kafka的功能更加强大,虽然不同的MQ都有自己的特点和优势,但是,不管是哪种MQ,都有MQ本身自带的一些特点,下面,介绍MQ的特点。 MQ特点 1、先进先出 不能先进先出,都不能说是队列了。消息队列的顺序在入队的时候就基本已经确定了,一般是不需人工干预的。而且,最重要的是,数据是只有一条数据在使用中。 这也是MQ在诸多场景被使用的原因。 2、发布订阅 发布订阅是一种很高效的处理方式,如果不发生阻塞,基本可以当做是同步操作。这种处理方式能非常有效的提升服务器利用率,这样的应用场景非常广泛。 3、持久化 持久化确保MQ的使用不只是一个部分场景的辅助工具,而是让MQ能像数据库一样存储核心的数据。 4、分布式 在现在大流量

系统吞吐量、TPS(QPS)、用户并发量、性能测试概念和公式

匿名 (未验证) 提交于 2019-12-03 00:27:02
PS:下面是性能测试的主要概念和计算公式,记录下: 一.系统吞度量要素: 系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间 QPS(TPS): 并发数: (很多人经常会把并发数和TPS理解混淆) 理解了上面三个要素的意义之后,就能推算出它们之间的关系: QPS = 1000/(30*60) 事务/秒 并发数= QPS*平均响应时间 = 1000/(30*60) *(5*60)=166.7 决定系统响应时间要素 我们做项目要排计划,可以多人同时并发做多项任务,也可以一个人或者多个人串行工作,始终会有一条关键路径,这条路径就是项目的工期。 系统一次调用的响应时间跟项目计划一样,也有一条关键路径,这个关键路径是就是系统影响时间; 关键路径是有CPU运算、IO、外部系统响应等等组成。 二.系统吞吐量评估: 我们在做系统设计的时候就需要考虑CPU运算、IO、外部系统响应因素造成的影响以及对系统性能的初步预估。 而通常境况下,我们面对需求,我们评估出来的出来QPS、并发数之外,还有另外一个维度:日PV。 通过观察系统的访问日志发现,在用户量很大的情况下,各个时间周期内的同一时间段的访问流量几乎一样。比如工作日的每天早上。只要能拿到日流量图和QPS我们就可以推算日流量。 通常的技术方法: A)淘宝 淘宝流量图: B) B2B中文站

Kafka、RabbitMQ、RocketMQ等消息中间件的对比 ―― 消息发送性能和区别

匿名 (未验证) 提交于 2019-12-03 00:22:01
原文: http://jm.taobao.org/2016/04/01/kafka-vs-rabbitmq-vs-rocketmq-message-send-performance/?utm_source=tuicool&utm_medium=referral 分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦。现在开源的消息中间件有很多,前段时间我们自家的产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注。 那么,消息中间件性能究竟哪家强? 带着这个疑问,我们中间件测试组对常见的三类消息产品(Kafka、RabbitMQ、RocketMQ)做了性能比较。 Kafka是LinkedIn开源的分布式发布-订阅消息系统,目前归属于Apache定级项目。Kafka主要特点是基于Pull的模式来处理消息消费,追求高吞吐量,一开始的目的就是用于日志收集和传输。0.8版本开始支持复制,不支持事务,对消息的重复、丢失、错误没有严格要求,适合产生大量数据的互联网服务的数据收集业务。 RabbitMQ是使用Erlang语言开发的开源消息队列系统,基于AMQP协议来实现。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。AMQP协议更多用在企业系统内,对数据一致性、稳定性和可靠性要求很高的场景,对性能和吞吐量的要求还在其次。

聊聊QPS/TPS/并发量/系统吞吐量的概念

匿名 (未验证) 提交于 2019-12-03 00:22:01
我们在日常工作中经常会听到QPS/TPS这些名词,也会经常被别人问起说你的系统吞吐量有多大。这个问题从业务上来讲,可以理解为应用系统每秒钟最大能接受的用户访问量。或者每秒钟最大能处理的请求数; 处理完 请求的次数;注意这里是 处理完 。具体是指发出请求到服务器处理完成功返回结果。可以理解在server中有个counter,每处理一个请求加1,1秒后counter=QPS。 计算关系: 文章来源: 聊聊QPS/TPS/并发量/系统吞吐量的概念

系统吞吐量(TPS)、用户并发量、性能测试概念和公式

匿名 (未验证) 提交于 2019-12-03 00:19:01
PS:下面是性能测试的主要概念和计算公式,记录下: 一.系统吞度量要素: 一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联。 单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。 系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间 QPS(TPS): 每秒钟request/事务 数量 并发数: 系统同时处理的request/事务数 响应时间: 一般取平均响应时间 (很多人经常会把并发数和TPS理解混淆) 理解了上面三个要素的意义之后,就能推算出它们之间的关系: QPS(TPS)= 并发数/平均响应时间 一个系统吞吐量通常由QPS(TPS)、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统的吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降。 决定系统响应时间要素 我们做项目要排计划,可以多人同时并发做多项任务,也可以一个人或者多个人串行工作,始终会有一条关键路径,这条路径就是项目的工期。 系统一次调用的响应时间跟项目计划一样,也有一条关键路径,这个关键路径是就是系统影响时间; 关键路径是有CPU运算、IO、外部系统响应等等组成。 二.系统吞吐量评估:

关于消息队列的优缺点,看这篇就行

匿名 (未验证) 提交于 2019-12-02 23:57:01
在项目中为什么要使用消息队列 消息队列使用场景主要有三个: 解耦,异步,削峰 1、解耦 如上图所示,可能存在某一个系统产生关键数据,所有系统都需要其进行提供数据,导致A系统与要提供数据系统产生耦合,系统拓展,其他系统的需求修改都会导致A系统产生修改。 2、异步 如果用户一个点击,需要几个系统间的一系列反应,同时每一个系统肯都存在一定的耗时,那么可以使用mq对不同的系统进行发送命令,进行异步操作。 3、削峰 主要是如果存在用户使用的高峰期,例如存在大量的请求访问数据库(mysql每秒2000个请求),超过就会卡死,我们使用MQ作为类似于缓冲区的作用,高峰取时在MQ中进行大量请求积压,处理器按照自己的最大处理能力取请求量,等请求期过后再把它消耗掉。 消息队列有什么缺点 1、系统的可用性降低:很多服务都依赖于MQ,一旦MQ故障,系统崩溃。 2、系统变的复杂,序列考虑问题变多:发送消息重复,多了,乱序,丢掉。 3.、一致性问题:系统A给BCD发送,只有都成功才返回成功,结果BC成功,但是D失败,但是返回页面结果是成功。 每一个MQ都有什么异同和适用场景 ActiveMQ 最早大家都用ActiveMQ,但是现在确实大家用的不多了,没经过大规模吞吐量场景的验证,社区也不是很活跃,单机吞吐量,万级,吞吐量比RocketMQ和Kafka要低了一个数量级,响应为ms级别,有较低的概率丢失数据。