1、基本概念
1.1 吞吐量
1.1.1 基本概念
计算机系统的吞吐量是指流入,处理和流出系统的信息的速率;它取决于信息能够多快地输入内存,CPU能够多快地取指令,数据能够多快地从内存取出或存入,以及所得结果能够多快地从内存送给一台外围设备
1.1.2 吞吐量单位
吞吐量测试结果以 比特/秒 或 字节/秒 表示
1.1.2 吞吐量测试
在测试中以一定速率发送一定数量的帧,并计算待测设备传输的帧,如果发送的帧与接收的帧数量相等,那么就将发送速率提高并重新测试;如果接收帧少于发送帧则降低发送速率重新测试,直至得出最终结果
1.2 防火墙 和 吞吐量
1.2.1 基本概念
吞吐量是指在不丢包的情况下单位时间内通过防火墙的数据包数量;防火墙作为内外网之间的唯一数据通道,对每个数据包的处理要耗费资源,如果吞吐量太小,就会成为网络瓶颈,给整个网络的传输效率带来负面影响
1.2.2 防火墙效率
吞吐量的大小主要由防火墙内网卡,及程序算法的效率决定,尤其是程序算法;大多数防火墙虽号称100M防火墙,由于其算法依靠软件实现,通信量远远没有达到100M,实际只有10M-20M;纯硬件防火墙,由于采用硬件进行运算,因此吞吐量可以达到线性90-95M,是真正的100M防火墙。
1.3 带宽 和 吞吐量
吞吐量和带宽是很容易搞混的一个词,两者的单位都是Mbps * 带宽: Max net bitrate ,一般是指链路上每秒所能传送的比特数链路上的可用带宽 * 吞吐量:throughput ,实际链路中每秒所能传送的比特数,我们倾向于用“吞吐量”来表示一个系统的测试性能
1.4 request 和 吞吐量
一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联;单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高
2、网络 I/O
2.1 网络 I/O 评估
2.1.1 I/O 模型
针对某一个特定的场景来建立模型,用于IO容量规划以及问题分析,基本的网络io模型包含以下几部分 * IOPS * 带宽 IO的尺寸(大小)
2.1.2 网络 I/O 特点
当存储中提到IOPS最大能力的时候,一般采用随机小IO进行测试,此时占用的带宽是非常低的,响应时间也会比顺序的IO要长很多;如果将随机小IO改为顺序小IO,那么IOPS还会更大;当测试顺序大IO时,此时带宽占用非常高,但IOPS却很低
2.1.3 网络 I/O 评估工具
ping:最基本的,可以指定包的大小 iperf、ttcp:测试tcp、udp协议最大的带宽、延时、丢包
2.2 网络I/O 监测
2.2.1 带宽
nmon sar
2.2.2 响应时间
简单的方法,可采用ping命令查看ping的延时是否在合理范围,是否有丢包现象
2.3 网络 I/O 性能定位、优化
通过网络抓包和分析的工具,诊断网络的延时、丢包等异常情况出现在哪一段,然后具体分析
3、磁盘I/O
3.1 磁盘 I/O 评估
3.1.1 I/O 模型
针对某一个特定的场景来建立模型,用于IO容量规划以及问题分析,基本磁盘 io模型包含以下几部分 *OPS *宽 *O的尺寸(大小) *盘IO分别在哪些盘 *IO和写IO的比例 *IO是顺序的还是随机的 *IO是顺序的还是随机的
3.1.2 磁盘 I/O 特点
当存储中提到IOPS最大能力的时候,一般采用随机小IO进行测试,此时占用的带宽是非常低的,响应时间也会比顺序的IO要长很多;如果将随机小IO改为顺序小IO,那么IOPS还会更大;当测试顺序大IO时,此时带宽占用非常高,但IOPS却很低
3.1.3 磁盘 I/O 评估工具
磁盘IO能力的评估工具有很多,例如orion、iometer,dd、xdd、iorate,iozone,postmark
3.2 磁盘I/O 监测
iostat
3.3 磁盘 I/O 性能定位、优化
有过多不必要的读写;例如减少不必要的读写,降低日志等级等