From e9902c0c67d85f8191c59033b3ad4e7b5efe8400 Mon Sep 17 00:00:00 2001 From: GuangJie1 Date: Sat, 28 Jun 2025 16:23:12 +0800 Subject: [PATCH] add webbench readme --- Others/webbench/README.md | 56 +++++++++++++++++++++++++++ Others/webbench/doc/image-info.yml | 51 ++++++++++++++++++++++++ Others/webbench/doc/picture/logo.png | Bin 0 -> 3688 bytes 3 files changed, 107 insertions(+) create mode 100644 Others/webbench/README.md create mode 100644 Others/webbench/doc/image-info.yml create mode 100644 Others/webbench/doc/picture/logo.png diff --git a/Others/webbench/README.md b/Others/webbench/README.md new file mode 100644 index 0000000..6ff39e5 --- /dev/null +++ b/Others/webbench/README.md @@ -0,0 +1,56 @@ +# Quick reference + +- The official WebBench docker image. + +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative). + +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community). + +# WebBench | openEuler +Current WebBench docker images are built on the [openEuler](https://repo.openeuler.org/). This repository is free to use and exempted from per-user rate limits. + +WebBench is a lightweight and easy-to-use HTTP benchmarking tool designed to measure the performance of web servers. It simulates multiple concurrent clients sending HTTP +request to a target server, allowing users to evaluate throughput, reponse time, and concurrency handing capabilities. + +# Supported tags and respective Dockerfile links +The tag of each `webbench` docker image is consist of the version of `webbench` and the version of basic image. The details are as follows + +| Tag | Currently | Architectures | +|----------|-------------|------------------| +|[1.5-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Others/webbench/1.5/24.03-lts-sp1/Dockerfile)| webbench 1.5 on openEuler 24.03-LTS-SP1 | amd64, arm64 | + +# Usage +In this usage, users can select the corresponding `{Tag}` based on their requirements. + +- Pull the `openeuler/webbench` image from docker + + ```bash + docker pull openeuler/webbench:{Tag} + ``` + +- Run with an interactive shell + + You can start the container with an interactive shell to use webbench. + ``` + docker run -it --rm openeuler/webbench:{Tag} bash + ``` + +- Start a simple HTTP server + + In the directory containing you `index.html` file, run: + ``` + nohup python3 -m http.server 8080 & + ``` + * This command will serve files from the current directory on port `8080`. + * `nohup` and `&` allow the sever to keep running in the background. + +- Test GET request + + Once the server is running, use `webbench` to generate HTTP load: + ``` + webbench -c 100 -t 30 http://127.0.0.1:8080/index.html + ``` + This means using `100 concurrent clients` to test accessing `http://127.0.0.1:8080/index.html` for `30 seconds`. + +# Question and answering +If you have any questions or want to use some special features, please submit an issue or a pull request on [openeuler-docker-images](https://gitee.com/openeuler/openeuler-docker-images). \ No newline at end of file diff --git a/Others/webbench/doc/image-info.yml b/Others/webbench/doc/image-info.yml new file mode 100644 index 0000000..aa0aeb2 --- /dev/null +++ b/Others/webbench/doc/image-info.yml @@ -0,0 +1,51 @@ +name: webbench +category: others +description: Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。 +environment: | + 本应用在Docker环境中运行,安装Docker执行如下命令 + ``` + yum install -y docker + ``` +tags: | + webbench镜像的Tag由其版本信息和基础镜像版本信息组成,详细内容如下 + + | Tag | Currently | Architectures | + |----------|-------------|------------------| + |[1.5-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Others/webbench/1.5/24.03-lts-sp1/Dockerfile)| webbench 1.5 on openEuler 24.03-LTS-SP1 | amd64, arm64 | + +download: | + 拉取镜像到本地 + ``` + docker pull openeuler/webbench:{Tag} + ``` + +usage: | + - 以交互式Shell运行容器: + + 通过交互式 Shell 启动容器,使用webbench: + ``` + docker run -it --rm openeuler/webbench:{Tag} bash + ``` + + - 启动一个简单的HTTP服务 + + 在有index.html文件(任意内容)的目录下执行: + ``` + nohup python3 -m http.server 8080 & + ``` + * 该命令会将当前目录作为文件根目录,通过端口 8080 提供 HTTP 服务。 + * 使用 nohup 和 & 可以让服务器在后台持续运行,不会因关闭终端而中断。 + + - 测试 GET 请求 + + ``` + webbench -c 100 -t 30 http://127.0.0.1:8080/index.html + ``` + 表示使用 100 个并发客户端,测试 30 秒访问 http://127.0.0.1:8080/index.html。 + +license: GPL-3.0 license +similar_packages: + - wrk: 高性能 HTTP 压力测试工具,支持多线程和长连接,适合更高并发场景。 +dependency: + - ctags + - libtirpc diff --git a/Others/webbench/doc/picture/logo.png b/Others/webbench/doc/picture/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a72df0597ec77c7665bd62b556ce3e9bd90c80 GIT binary patch literal 3688 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 I>${`=3liAS#{d8T literal 0 HcmV?d00001 -- Gitee