【Linux】ab命令实现网站性能压力测试,面试一路绿灯Offer拿到手软

  • 压测时的信息详解

  • 总结

ab命令介绍

ApacheBench(即ab)通常用来做网站性能压力测试,是性能调优过程中必不可少的一环,ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,既可以用来测试Apache的负载压力,也可以测试nginx、lighthttp、tomcat、IIS等其它Web服务器的压力。

ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载,因此是某些DDOS攻击之必备良药,使用请谨慎。

一般我们会使用ab命令在本地进行测试,比如使用内网的一台或者多台服务器通过内网进行测试,这样测试的数据会比较准确,如果是远程对web服务器进行压力测试,往往效果不理想。

ab命令的安装

[root@gaosh-1 ~]# rpm -qa |grep httpd

httpd-2.2.15-69.el6.centos.x86_64

httpd-tools-2.2.15-69.el6.centos.x86_64

这里的httpd-tools里面就包含了ab命令,所以如果没有安装httpd-tools,只需要使用yum进行安装即可

[root@gaosh-1 ~]# yum install httpd-tools

查看版本:

[root@gaosh-1 ~]# ab -V

This is ApacheBench, Version 2.3 <$Revision: 655654 $>

ab命令的参数

[root@gaosh-1 ~]# ab -h

Usage: ab [options] [http[s]😕/]hostname[:port]/path

Options are:

-n requests Number of requests to perform

要执行的请求数,本次测试总共要访问页面的次数

-c concurrency Number of multiple requests to make

一次产生的请求个数(默认是并发数)

-t timelimit Seconds to max. wait for responses

测试所进行的最大秒数。其内部隐含值是-n 50000。

它可以使对服务器的测试限制在一个固定的总 时间以内。默认时,没有时间限制

-p postfile File containing data to POST. Remember also to set -T

###包含了需要POST的数据的文件,文件格式如“p1=1&p2=2”.使用方法是 -p 111.txt 。 (配合-T)

-u putfile File containing data to PUT. Remember also to set -T

-T content-type Content-type header for POSTing, eg.

‘application/x-www-form-urlencoded’

Default is ‘text/plain’

-v verbosity How much troubleshooting info to print

###设置显示信息的详细程度 – 4或更大值会显示头信息,

####3或更大值可以显示响应代码(404, 200等), 2或更大值可以显示警告和其他信息。

-w Print out results in HTML tables

以HTML表的格式输出结果。默认时,它是白色背景的两列宽度的一张表

-i Use HEAD instead of GET

####执行HEAD请求,而不是GET。

-C attribute Add cookie, eg. 'Apache=1234. (repeatable)

-V Print version number and exit

打印版本号

[root@gaosh-1 ~]#

参数比较多,但是我们用的最多的也就是 -n -c -t -p -w ,使用频繁度从左往右依次递减

使用举例
1. 使用gaosh-64服务器对gaosh-1服务器进行压测,模拟10个用户,对百度首页发起1000次请求

[root@gaosh-64 ~]# ab -n 1000 -c 10 http://192.168.1.22/index.php

在压测时候会显示被压测服务器的版本号

在这里插入图片描述

小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
img

最后

对于很多Java工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。

整理的这些资料希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。

再分享一波我的Java面试真题+视频学习详解+技能进阶书籍

美团二面惜败,我的凉经复盘(附学习笔记+面试整理+进阶书籍)

很多Java工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。**

整理的这些资料希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。

再分享一波我的Java面试真题+视频学习详解+技能进阶书籍

[外链图片转存中…(img-E1Y9KiR2-1711016741498)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

  • 27
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值