https://zhuanlan.zhihu.com/p/529735003
 

前言

我们利用mino与ceph rgw搭建好的oss经过多层网络转发,传输速度必定有所折损,这个时候我们使用wrap来测试oss对象存储的真实性能。

利用wrarp测试oss性能

wrarp是minio项目下的一个开源测试工具,wrap会上传一定随机数据到oss对象存储服务器上,统计过程消耗时间得出整个oss性能分析。

使用docker 执行测试

docker pull minio/warp:v0.5.5
docker run --net host minio/warp:v0.5.5 mixed --host=172.16.1.54:7480 \
--access-key=123456 \
--secret-key=123456 \
--autoterm

上述命令使用warpv0.5.5对地址为172.16.1.54:7480的oss服务器进行测试。

相关命令

FLAGS:
--no-color disable color theme
--debug enable debug output
--insecure disable TLS certificate verification
--autocompletion install auto-completion for your shell
--host value host. Multiple hosts can be specified as a comma separated list. (default: "127.0.0.1:9000") [$WARP_HOST]
--access-key value Specify access key [$WARP_ACCESS_KEY]
--secret-key value Specify secret key [$WARP_SECRET_KEY]
--tls Use TLS (HTTPS) for transport [$WARP_TLS]
--region value Specify a custom region [$WARP_REGION]
--encrypt encrypt/decrypt objects (using server-side encryption with random keys)
--bucket value Bucket to use for benchmark data. ALL DATA WILL BE DELETED IN BUCKET! (default: "warp-benchmark-bucket")
--host-select value Host selection algorithm. Can be "weighed" or "roundrobin" (default: "weighed")
--concurrent value Run this many concurrent operations (default: 20)
--noprefix Do not use separate prefix for each thread
--prefix value Use a custom prefix for each thread
--disable-multipart disable multipart uploads
--md5 Add MD5 sum to uploads
--storage-class value Specify custom storage class, for instance 'STANDARD' or 'REDUCED_REDUNDANCY'.
--objects value Number of objects to upload. (default: 2500)
--obj.size value Size of each generated object. Can be a number or 10KiB/MiB/GiB. All sizes are base 2 binary. (default: "10MiB")
--get-distrib value The amount of GET operations. (default: 45)
--stat-distrib value The amount of STAT operations. (default: 30)
--put-distrib value The amount of PUT operations. (default: 15)
--delete-distrib value The amount of DELETE operations. Must be at least the same as PUT. (default: 10)
--obj.generator value Use specific data generator (default: "random")
--obj.randsize Randomize size of objects so they will be up to the specified size
--benchdata value Output benchmark+profile data to this file. By default unique filename is generated.
--serverprof value Run MinIO server profiling during benchmark; possible values are 'cpu', 'mem', 'block', 'mutex' and 'trace'.
--duration value Duration to run the benchmark. Use 's' and 'm' to specify seconds and minutes. (default: 5m0s)
--autoterm Auto terminate when benchmark is considered stable.
--autoterm.dur value Minimum duration where output must have been stable to allow automatic termination. (default: 10s)
--autoterm.pct value The percentage the last 6/25 time blocks must be within current speed to auto terminate. (default: 7.5)
--noclear Do not clear bucket before or after running benchmarks. Use when running multiple clients.
--syncstart value Specify a benchmark start time. Time format is 'hh:mm' where hours are specified in 24h format, server TZ.
--warp-client value Connect to warp clients and run benchmarks there.
--analyze.dur value Split analysis into durations of this length. Can be '1s', '5s', '1m', etc.
--analyze.out value Output aggregated data as to file
--analyze.op value Only output for this op. Can be GET/PUT/DELETE, etc.
--analyze.host value Only output for this host.
--analyze.skip value Additional duration to skip when analyzing data. (default: 0s)
--analyze.v Display additional analysis data.
--serve value When running benchmarks open a webserver to fetch results remotely, eg: localhost:7762
--help, -h show help

结果

Uploading 2500 objects of Random data; 4194304 bytes totalwarp: Starting benchmark in 3s...
warp: Benchmark starting...
Throughput 101.0 objects/s within 7.500000% for 10.262s. Assuming stability. Terminating benchmark.
warp: Saving benchmark data...
warp: Benchmark data written to "warp-mixed-2022-04-18[030853]-nm3V.csv.zst"
Mixed operations.
Operation: DELETE, 10%, Concurrency: 20, Ran 36s.
* Throughput: 33.90 obj/s
Operation: GET, 45%, Concurrency: 20, Ran 36s.
* Throughput: 610.60 MiB/s, 152.65 obj/s
Operation: PUT, 15%, Concurrency: 20, Ran 36s.
* Throughput: 203.71 MiB/s, 50.93 obj/s
Operation: STAT, 30%, Concurrency: 20, Ran 36s.
* Throughput: 101.58 obj/s
Cluster Total: 813.56 MiB/s, 338.78 obj/s over 37s.

结语

以上就是使用wrap测试oss的其中一种办法,你学会了吗?希望读者朋友看完这篇文章后有所启发。

[转帖]如何利用wrarp测试oss性能?的更多相关文章

  1. 【转】dd命令详解及利用dd测试磁盘性能

    dd命令详解及利用dd测试磁盘性能   linux下dd命令详解 名称: dd 使用权限: 所有使用者 manpage 定义: convert and copy a file 使用方式: dd [op ...

  2. [.net 面向对象程序设计进阶] (16) 多线程(Multithreading)(一) 利用多线程提高程序性能(上)

    [.net 面向对象程序设计进阶] (16) 多线程(Multithreading)(一) 利用多线程提高程序性能(上) 本节导读: 随着硬件和网络的高速发展,为多线程(Multithreading) ...

  3. Apache JMeter--网站自动测试与性能测评

    Apache JMeter--网站自动测试与性能测评 2013-02-28 15:48:05 标签:Jmeter From:http://bdql.iteye.com/blog/291987 出于学习 ...

  4. jmeter之如何减负-实现稳定超高并发测试(性能调优)之正确添加监听器

    jmeter之如何减负-实现稳定超高并发测试(性能调优)在测试过程中,初学者使用工具不当,添加众多监控组件,非常想看到实时报告,跑不了一会,jmeter就卡死,只得重启 下面来总结下如何正确使用jme ...

  5. [.net 面向对象程序设计进阶] (18) 多线程(Multithreading)(三) 利用多线程提高程序性能(下)

    [.net 面向对象程序设计进阶] (18) 多线程(Multithreading)(二) 利用多线程提高程序性能(下) 本节导读: 上节说了线程同步中使用线程锁和线程通知的方式来处理资源共享问题,这 ...

  6. [.net 面向对象程序设计进阶] (17) 多线程(Multithreading)(二) 利用多线程提高程序性能(中)

    [.net 面向对象程序设计进阶] (17) 多线程(Multithreading)(二) 利用多线程提高程序性能(中) 本节要点: 上节介绍了多线程的基本使用方法和基本应用示例,本节深入介绍.NET ...

  7. [.net 面向对象程序设计进阶] (15) 缓存(Cache)(二) 利用缓存提升程序性能

    [.net 面向对象程序设计进阶] (15) 缓存(Cache)(二) 利用缓存提升程序性能 本节导读: 上节说了缓存是以空间来换取时间的技术,介绍了客户端缓存和两种常用服务器缓布,本节主要介绍一种. ...

  8. 使用SQLIO测试磁盘性能

    SQLIO 是一个用于测试存储系统能力的命令行工具,用以获取存储系统相关的性能指标,以判断系统的 I/O 处理能力. 在微软的网站可以下载 SQLIO 的安装包,安装后目录中会出现如下文件: EULA ...

  9. hdparm测试硬盘性能

    <1>Centos安装hdparm测试硬盘性能 一.安装hdparm yum install hdparm -y Linux学习,http:// linux.it.net.cn 二.评估读 ...

  10. Android IOS WebRTC 音视频开发总结(五六)-- 如何测试网络性能?

    本文主要介绍如何测试网络性能,文章来自博客园RTC.Blacker,欢迎关注微信公众号blacker,更多详见www.rtc.help 网络性能直接决定了视频通话效果,比如qq,很多时候我们我们觉得通 ...

随机推荐

  1. springMVC的基本介绍与入门

    1:MVC是什么? MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范. Model(模型):数据模型,提高要展示的数据 现在一般是分为Value ...

  2. 使用Spring AI让你的Spring Boot应用快速拥有生成式AI能力

    之前分享了关于Spring新项目Spring AI的介绍视频.视频里演示了关于使用Spring AI将Open AI的能力整合到Spring应用中的操作,但有不少读者提到是否有博客形式的学习内容.所以 ...

  3. Centos 利用本地镜像安装yum源

    前提 在"设置"中确保两点 1.勾选"已连接" 2.添加上本地的"centos.iso"镜像文件 切换到用户目录 cd / 新建一个iso目 ...

  4. Asp .Net Core 系列:Ocelot结合Consul实现服务注册、服务发现

    Consul下载地址:https://www.consul.io/downloads.html 文档:https://learn.hashicorp.com/consul/getting-starte ...

  5. xpath语法与lxml库详解

    xpath语法与lxml库 摘要:本文详细介绍了xpath语法,lxml库的使用以及两者的结合使用 注:平常爬虫运用的Xpath不是来自element中通过Chrome插件XPath Helper写出 ...

  6. 【华为云技术分享】云容器引擎 CCE权限管理实践

    随着容器化的快速发展,大数据原有的分布式任务调度模式,正在被基于Kubernetes的技术架构所取代.CCE云容器引擎是华为云推出的支持Kubernetes社区原生应用和工具,应用级自动弹性伸缩,自动 ...

  7. 华为云GaussDB助力工商银行、华夏银行斩获“十佳卓越实践奖”

    近日,2023金融街论坛年会在北京成功举办.活动期间,由北京金融科技产业联盟举办的全球金融科技大会系列活动--分布式数据库金融应用研究与实践大赛获奖结果正式公布.其中,由华为云GaussDB参与支持的 ...

  8. 视频编码耗时长、编码帧发送失败…DVPP视频编码问题典型案例分析

    摘要:本期就分享几个关于DVPP视频编码问题的典型案例,并给出原因分析及解决方法 本文分享自华为云社区<DVPP媒体数据处理视频编码问题案例>,作者:昇腾CANN. DVPP(Digita ...

  9. 印尼Widya Robotics携手华为云,让建筑工地安全看得见

    摘要:AI落地效率提升30倍,实时智慧安全检测,全天候保障劳工人身安全. 本文分享自华为云社区<云上360行 丨 印尼Widya Robotics携手华为云,让建筑工地安全看得见>,作者: ...

  10. 云小课 | 网络知识一箩筐——NAT网关,让IP地址华丽变身,轻松实现内外网互通

    阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课) 或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要: 网络知识一箩筐 ...