摘要:
linux 下 tcp 参数优化 vim /etc/sysctl.conf # 未收到客户端确认信息的连接请求的最大值net.ipv4.tcp_max_syn_backlog=5000 #timewait 数量net.ipv4.tcp_max_tw_buckets = 6000 # 改进 tcp 的 阅读全文
摘要:
概述 在本地针对项目的登录接口做了一次简单的压力测试。200 并发持续 120s,观察吞吐量 运行结束之后,吞吐量是这样的 如图所示,吞吐量波动巨大,完全不正常。现在我们需要去观察一下服务器了 mpstat -P ALL 1* 先看一下 cpu 的运行情况 可以发现 cpu 的利用率呈现一种阶梯式递 阅读全文
摘要:
概述 性能测试中,如果一台机器的资源不足以支撑压测需求,那么我们就需要分布式来执行。所谓分布式,就是一台控制机带着 N 多台执行机同时跑脚本分布式执行原理 分布式测试时,本地 jmeter 作为控制机 (master),其它机器做为执行机 (slave)。master 把脚本分发到每台 slave 阅读全文
摘要:
jvm 调优 -server:tomcat 以 server 模式运行时将拥有更大更高的并发处理能力,更快更强捷的 JVM 垃圾回收机制,可以获得更多的负载与吞吐量-Xms–Xmx:把 Xms 与 Xmx 两个值设成一样是最优的做法-Xss:设定线程的堆栈大小。一般不易设置超过 1M,否则容易出现 阅读全文
摘要:
概述 linux 自身有很多性能分析工具。并且提供了详细的输出格式。熟练掌握这些工具可以帮助我们更快的发现性能瓶颈,为性能调优提供思路。 工具一览 常用工具功能 top 展示所有进程信息 vmstat 展示详细的系统,硬件,信息 lscpu cpu 信息查看 sysstat 工具集,包括 sar,m 阅读全文
摘要:
swap 原理 swap 就是内存交换的意思。计算机对内存分为物理内存与虚拟内存。物理内存就是计算机的实际内存大小,虚拟内存则是从磁盘空间开辟出一部分内存空间虚拟出来的,所以也叫磁盘缓存。虚拟内存的出现,让机器内存不够的情况得到部分解决。程序运行的时候系统会在虚拟内存与物理内存直接进行替换和加载。这 阅读全文
摘要:
概述 在性能测试中,IO 是一个非常重要的指标。我这里整理了一部分关于 IO 的内容,用来加深自己的印象。所谓 IO,其实就是磁盘的读写。读 IO,就是发出指令,从磁盘读取某段扇区的内容。指令首先告诉磁盘开始的扇区位置,然后给出需要从这个初始扇区往后读取的连续扇区的个数,同时会告知磁盘动作是读,还是 阅读全文
摘要:
概述 性能测试中,对服务端的指标监控也是很重要的一个环节。通过对各项服务器性能指标的监控分析,可以定位到性能瓶颈。 后端性能指标有 CPU,内存,网络,jvm,I/O 等等 分析思路 整体系统 CPU 利用率 内存利用率 磁盘 I/O 的利用率和延迟 网络利用率 CPU 瓶颈分析 监控命令:vmst 阅读全文
摘要:
概述 做压力测试的时候,我们经常会关注两个指标,CPU 利用率和 CPU 负载在 Linux 中,进程分为三种状态: 不可中断的进程 blocked process可运行的进程 runnable process正在运行的进程 running process 当进程处于不可中断时,进程会等待 I/O 阅读全文
摘要:
cpu 平均负载 cpu 平均负载指的是单位时间内正在运行的不可中断的平均进程数,也就是是等待处理的任务队列下图红圈显示的是 5 分钟,10 分钟,15 分钟内的平均负载 导致 cpu 平均负载升高的原因 1:CPU 密集型2: I/O 密集型3:大量进程竞争 cpu 平均负载究竟是如何升高的?CP 阅读全文