Minor fixes

This commit is contained in:
Yavuz Aydın 2021-04-15 15:54:51 +02:00
parent 637546a087
commit 620c38459c
2 changed files with 35 additions and 122 deletions

101
README.md
View File

@ -1,110 +1,23 @@
nench.sh ("new bench.sh") snench.sh ("Snel.com benchmark")
========================= =========================
Current version always available at https://github.com/n-st/nench Current version always available at https://git.snel.com/snelcom/snench
IPv4- and v6-enabled download at http://wget.racing/nench.sh - Based on nench (https://github.com/n-st/nench)
- Includes CPU and ioping measurements
- loosely based on the established freevps.us/bench.sh - Successfully tested on Arch Linux, Debian, FreeBSD, and Ubuntu
- includes CPU and ioping measurements
- reduced number of speedtests (9 x 100 MB), while retaining useful European
and North American POPs
- runs IPv6 speedtest by default (if the server has IPv6 connectivity)
- has a 10-second timeout for each speedtest, so you don't end up waiting 10
minutes for that one slow speedtest from halfway around the globe — but
thanks to the power of `curl -w`, you still get to see what speed your server
achieved during those 10 seconds
- successfully tested on Arch Linux, Debian, FreeBSD, and Ubuntu
The script was originally intended to be used only by me, so I didn't put much
effort into ensuring safety, security, and interoperability.
I welcome any improvements, just send me a pull request.
Disclaimer
----------
You've probably noticed that the usage examples below have you directly run a
script from an unauthenticated source (as so many "easy-install" and benchmark
scripts do).
I didn't think I'd have to mention that this is a **potential security risk**
really, if you're at the point where you're benchmarking Linux VMs, I would
assume you know how much harm a rogue shell script could potentially do to your
system…
What's more, `nench.sh` downloads a statically built binary to run the IO
latency tests. I assure you it is and always will be a clean unmodified build
of `ioping`, but how do you know you can trust me?
So, basically: **use `nench.sh` at your own risk**, and preferably not on
production systems (which is a bad idea anyway, because it will hammer your
harddisk and network for up to several minutes).
Usage example Usage example
------------- -------------
``` ```
(curl -s wget.racing/nench.sh | bash; curl -s wget.racing/nench.sh | bash) 2>&1 | tee nench.log (curl -s https://git.snel.com/snelcom/snench/raw/branch/master/snench.sh | bash) 2>&1 | tee nench.log
```
```
(wget -qO- wget.racing/nench.sh | bash; wget -qO- wget.racing/nench.sh | bash) 2>&1 | tee nench.log
``` ```
Example output Example output
-------------- --------------
Output from a VPS hosted with Vultr in Frankfurt: Output from a VPS hosted with Snel.com in Rotterdam:
``` ```
-------------------------------------------------
nench.sh v2017.05.08 -- https://git.io/nench.sh
benchmark timestamp: 2017-05-08 20:36:54 UTC
-------------------------------------------------
Processor: Virtual CPU a7769a6388d5
CPU cores: 1
Frequency: 2394.454 MHz
RAM: 494M
Swap: 871M
Kernel: Linux 3.16.0-4-amd64 x86_64
Disks:
vda 20G HDD
CPU: SHA256-hashing 500 MB
4.183 seconds
CPU: bzip2-compressing 500 MB
6.830 seconds
CPU: AES-encrypting 500 MB
1.636 seconds
ioping: seek rate
min/avg/max/mdev = 148.6 us / 280.9 us / 9.22 ms / 234.7 us
ioping: sequential speed
generated 2.15 k requests in 5.00 s, 536.2 MiB, 428 iops, 107.2 MiB/s
dd test
1st run: 339.51 MiB/s
2nd run: 345.23 MiB/s
3rd run: 342.37 MiB/s
average: 342.37 MiB/s
IPv4 speedtests
your IPv4: 108.61.179.xxxx
Cachefly CDN: 205.34 MiB/s
Leaseweb (NL): 140.55 MiB/s
Softlayer DAL (US): 0.08 MiB/s
Online.net (FR): 0.17 MiB/s
OVH BHS (CA): 11.13 MiB/s
IPv6 speedtests
your IPv6: 2001:19f0:6c01:xxxx
Leaseweb (NL): 101.06 MiB/s
Softlayer DAL (US): 2.89 MiB/s
Online.net (FR): 0.18 MiB/s
OVH BHS (CA): 9.84 MiB/s
-------------------------------------------------
``` ```

View File

@ -1,31 +1,31 @@
#!/usr/bin/env bash #!/usr/bin/env bash
######################################################################################################################################################################### ##################################################################################################################################################
# # # #
# 88 # # 88 #
# 88 # # 88 #
# 88 # # 88 #
# ,adPPYba, 8b,dPPYba, ,adPPYba, 88 ,adPPYba, ,adPPYba, 88,dPYba,,adPYba, # # ,adPPYba, 8b,dPPYba, ,adPPYba, 88 ,adPPYba, ,adPPYba, 88,dPYba,,adPYba, #
# I8[ "" 88P' `"8a a8P_____88 88 a8" "" a8" "8a 88P' "88" "8a # # I8[ "" 88P' `"8a a8P_____88 88 a8" "" a8" "8a 88P' "88" "8a #
# `"Y8ba, 88 88 8PP""""""" 88 8b 8b d8 88 88 88 # # `"Y8ba, 88 88 8PP""""""" 88 8b 8b d8 88 88 88 #
# aa ]8I 88 88 "8b, ,aa 88 888 "8a, ,aa "8a, ,a8" 88 88 88 # # aa ]8I 88 88 "8b, ,aa 88 888 "8a, ,aa "8a, ,a8" 88 88 88 #
# `"YbbdP"' 88 88 `"Ybbd8"' 88 888 `"Ybbd8"' `"YbbdP"' 88 88 88 # # `"YbbdP"' 88 88 `"Ybbd8"' 88 888 `"Ybbd8"' `"YbbdP"' 88 88 88 #
# # # #
# # # #
######################################################################################################################################################################### ##################################################################################################################################################
# # # #
# Author: Snel.com - Yavuz Aydin # # Author: Snel.com - Yavuz Aydin #
# E-mail: support@snel.com # # E-mail: support@snel.com #
# (c) Snel.com - all rights reserved # # (c) Snel.com - all rights reserved #
# # # #
######################################################################################################################################################################### ##################################################################################################################################################
# # # #
# Script: snench.sh # # Script: snench.sh #
# License: This file is licensed under the Apache License, Version 2.0 # # License: This file is licensed under the Apache License, Version 2.0 #
# Purpose: Easy and fast benchmarks! # # Purpose: Easy and fast benchmarks! #
# Current version: https://git.snel.com/snelcom/snench # # Current version: https://git.snel.com/snelcom/snench #
# Usage: bash <(curl -s https://git.snel.com/snelcom/snench/raw/branch/master/snench.sh || wget -qO- https://git.snel.com/snelcom/snench/raw/branch/master/snench.sh) # # Usage: see https://git.snel.com/snelcom/snench/src/branch/master/README.md #
# # # #
######################################################################################################################################################################### ##################################################################################################################################################
command_exists() command_exists()
{ {
@ -148,7 +148,7 @@ printf '\n'
if ! command_exists ioping if ! command_exists ioping
then then
curl -s https://git.snel.com/snelcom/snench/raw/branch/master/ioping.static || wget -qO- https://git.snel.com/snelcom/snench/raw/branch/master/ioping.static curl --max-time 10 -so ioping.static https://git.snel.com/snelcom/snench/raw/branch/master/ioping.static
chmod +x ioping.static chmod +x ioping.static
ioping_cmd="./ioping.static" ioping_cmd="./ioping.static"
else else