【Linux】Ubuntu 24安装webbench

文章目录

  • [一、Webbench 介绍](#一、Webbench 介绍)
  • [二、Ubuntu 安装 Webbench 步骤](#二、Ubuntu 安装 Webbench 步骤)
    • [1. 安装依赖工具](#1. 安装依赖工具)
    • [2. 下载 Webbench 源码](#2. 下载 Webbench 源码)
      • [方式 1:git 克隆(推荐)](#方式 1:git 克隆(推荐))
      • [方式 2:手动下载压缩包(备用)](#方式 2:手动下载压缩包(备用))
      • 方式3:github下载
    • [3. 编译并安装](#3. 编译并安装)
      • [报错:rpc/types.h: No such file or directory](#报错:rpc/types.h: No such file or directory)
        • 问题原因分析
        • 解决方案
          • [步骤 1:安装 libtirpc 依赖库](#步骤 1:安装 libtirpc 依赖库)
          • [步骤 2:修改源码中的头文件引用(关键)](#步骤 2:修改源码中的头文件引用(关键))
          • [步骤 3:修改 Makefile 编译参数](#步骤 3:修改 Makefile 编译参数)
          • [步骤 4:重新编译并安装](#步骤 4:重新编译并安装)
          • [步骤 5:验证安装](#步骤 5:验证安装)
          • 补充说明
    • [4. 验证安装](#4. 验证安装)
  • [三、Webbench 基本使用](#三、Webbench 基本使用)
    • [1. 核心语法](#1. 核心语法)
    • [2. 常用选项](#2. 常用选项)
    • [3. 使用示例](#3. 使用示例)
  • 四、常见问题及解决
    • [1. 编译报错:`cc: command not found`](#1. 编译报错:cc: command not found)
    • [2. 安装后执行 `webbench` 提示 `command not found`](#2. 安装后执行 webbench 提示 command not found)
    • [3. 测试 HTTPS 服务失败](#3. 测试 HTTPS 服务失败)
  • [五、卸载 Webbench](#五、卸载 Webbench)

一、Webbench 介绍

Webbench 是一款轻量级的网站压力测试工具,能测试 HTTP/HTTPS 服务的并发访问性能,支持模拟大量客户端并发请求,适合快速验证 Web 服务的负载能力。

二、Ubuntu 安装 Webbench 步骤

1. 安装依赖工具

Webbench 编译需要 gcc 编译器和 make 构建工具,首先安装依赖:

bash 复制代码
sudo apt update  # 更新软件源
sudo apt install -y gcc make  # 安装编译依赖

2. 下载 Webbench 源码

Webbench 官方源码托管在 GitHub,可通过 git 克隆或直接下载压缩包:

方式 1:git 克隆(推荐)

bash 复制代码
sudo apt install -y git  # 安装 git(若未安装)
git clone https://github.com/EZLippi/WebBench.git  # 克隆源码仓库
cd WebBench  # 进入源码目录

方式 2:手动下载压缩包(备用)

若 git 访问失败,可手动下载:

bash 复制代码
wget https://github.com/EZLippi/WebBench/archive/refs/heads/master.zip -O webbench-master.zip
unzip webbench-master.zip  # 解压(需安装 unzip:sudo apt install -y unzip)
cd WebBench-master  # 进入解压后的目录

方式3:github下载

bash 复制代码
https://github.com/EZLippi/WebBench

3. 编译并安装

在源码目录执行编译和安装命令:

bash 复制代码
make  # 编译源码
sudo make install  # 安装到系统(默认安装路径:/usr/local/bin/webbench)

报错:rpc/types.h: No such file or directory

问题原因分析

报错 rpc/types.h: No such file or directory 是因为 Ubuntu 系统中缺少 RPC(远程过程调用)相关的头文件和库rpc/types.h 属于 libtirpc 库(传统 RPC 库在现代 Linux 发行版中已被 libtirpc 替代,而旧版 Webbench 源码仍引用了旧的 RPC 头文件路径)。

解决方案
步骤 1:安装 libtirpc 依赖库

首先安装 libtirpc 的开发包(包含头文件和编译依赖):

bash 复制代码
sudo apt update
sudo apt install -y libtirpc-dev
步骤 2:修改源码中的头文件引用(关键)

由于 libtirpc 将 RPC 头文件路径改为 <tirpc/rpc/types.h>,而 Webbench 源码中仍用旧路径 <rpc/types.h>,需要手动修改源码:

bash 复制代码
# 进入 WebBench 源码目录(确保路径正确)
cd WebBench  # 若用压缩包安装则是 cd WebBench-master

# 编辑 webbench.c 文件
vim webbench.c

在编辑器中找到第 22 行左右的:

c 复制代码
#include <rpc/types.h>

修改为:

c 复制代码
#include <tirpc/rpc/types.h>

同时检查是否有其他 RPC 头文件(如 rpc/xdr.h),若有也一并修改为 <tirpc/rpc/xdr.h>(Webbench 源码中通常只有 rpc/types.h)。

保存退出(vim 中按 Esc,输入 :wq 回车)。

步骤 3:修改 Makefile 编译参数

需要在编译时链接 libtirpc 库,否则会出现链接错误:

bash 复制代码
# 编辑 Makefile
vim Makefile

找到编译命令行(类似 cc -Wall -ggdb -W -O -c -o webbench.o webbench.c),在链接阶段(LIBS 或最终编译行)添加 -ltirpc 参数。

具体修改:

找到 Makefile 中的:

bash 复制代码
webbench: webbench.o
	cc -o webbench webbench.o

修改为:

bash 复制代码
webbench: webbench.o
	cc -o webbench webbench.o -ltirpc
	
CFLAGS?= -ggdb -O
bash 复制代码
/usr/include/tirpc/rpc/types.h 注释#include <netconfig.h>

保存退出。

步骤 4:重新编译并安装
bash 复制代码
make clean  # 清理之前的编译错误文件
make        # 重新编译
sudo make install  # 安装
步骤 5:验证安装
bash 复制代码
webbench -V

若输出 webbench 1.5 Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software. 则安装成功。

补充说明
  • libtirpc 是现代 Linux 发行版(Ubuntu 18.04+、Debian 10+ 等)中替代传统 RPC 库的标准组件,解决了旧 RPC 头文件缺失问题。

  • 若仍有其他编译错误,可检查系统是否安装完整的编译环境:

    bash 复制代码
    sudo apt install -y build-essential

完成以上步骤后,即可正常使用 Webbench 进行压力测试。

4. 验证安装

执行以下命令,若输出版本信息则安装成功:

bash 复制代码
webbench -V

正常输出示例:

复制代码
webbench [option]... URL
webbench 1.5 Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

三、Webbench 基本使用

1. 核心语法

bash 复制代码
webbench [选项] 测试目标URL

2. 常用选项

选项 说明
-c <并发数> 模拟的并发客户端数量(核心参数)
-t <测试时间> 测试持续时间,单位:秒(默认 30 秒)
-9 强制使用 HTTP/1.0 协议
-? 查看帮助信息

3. 使用示例

测试本地 Nginx 服务,100 并发,持续 60 秒:

bash 复制代码
webbench -c 100 -t 60 http://127.0.0.1/

测试结果示例:

复制代码
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

Benchmarking: GET http://127.0.0.1/
100 clients, running 60 sec.

Speed=23456 pages/min, 456789 bytes/sec.
Requests: 23456 susceed, 0 failed.
  • Speed:每分钟处理的页面数、每秒传输的字节数
  • Requests:成功/失败的请求数

四、常见问题及解决

1. 编译报错:cc: command not found

原因:未安装 gcc 编译器,执行以下命令修复:

bash 复制代码
sudo apt install -y gcc

2. 安装后执行 webbench 提示 command not found

原因:安装路径未加入系统环境变量(极少情况),可直接使用绝对路径:

bash 复制代码
/usr/local/bin/webbench -c 100 -t 60 http://127.0.0.1/

3. 测试 HTTPS 服务失败

Webbench 原生对 HTTPS 支持有限,若需测试 HTTPS 服务,可考虑使用 ab(Apache Bench)或 wrk 替代:

bash 复制代码
# 安装 ab 工具
sudo apt install -y apache2-utils
# 测试 HTTPS 示例
ab -c 100 -n 1000 https://example.com/

五、卸载 Webbench

若需卸载,执行以下命令:

bash 复制代码
sudo rm -f /usr/local/bin/webbench  # 删除可执行文件
rm -rf WebBench  # 删除源码目录(若需)

至此,Ubuntu 系统下 Webbench 的安装、使用和卸载流程已完成。

相关推荐
Joy T1 小时前
【AI运维】02 云上基础部署:ECS、OSS 与 Nginx 的体系化理解与实践
运维·nginx
广州灵眸科技有限公司2 小时前
瑞芯微(EASY EAI)RV1126B CAN使用
linux·网络·单片机·嵌入式硬件
老师你好ss2 小时前
在VMware16中安装Ubuntu18.04
ubuntu
石小千3 小时前
Nexus升级(3.63.0--3.87.1)
运维
魂万劫4 小时前
如何在虚拟机VM上|Linux环境内安装windows
linux·运维·服务器·windows
序属秋秋秋4 小时前
《Linux系统编程之进程控制》【进程等待】
linux·c语言·c++·进程·系统编程·进程控制·进程等待
zfj3214 小时前
top 命令中的 wa (IO wait) 指标,理论上几乎完全是由磁盘IO(包括swap)引起的,而不是网络IO
linux·网络·top·iowait
Xの哲學4 小时前
Linux网卡注册流程深度解析: 从硬件探测到网络栈
linux·服务器·网络·算法·边缘计算
数字化转型20255 小时前
SAP Signavio 在风机制造行业的深度应用研究
大数据·运维·人工智能
用户6135411460165 小时前
libicu-62.1-6.ky10.x86_64.rpm 安装步骤详解(麒麟V10系统)
linux