2
0
Эх сурвалжийг харах

remove benchmark.sh, improve bulk.sh

jomo 10 жил өмнө
parent
commit
4c7da4940e
2 өөрчлөгдсөн 32 нэмэгдсэн , 32 устгасан
  1. 0 18
      test/benchmark.sh
  2. 32 14
      test/bulk.sh

+ 0 - 18
test/benchmark.sh

@@ -1,18 +0,0 @@
-#!/usr/bin/env bash
-host="$1"
-if [ -z "$host" ]; then
-  echo "Usage: $0 <host uri> > benchmark.txt 2>&1"
-  exit 1
-fi
-
-# insert newline after uuids
-id_file="$(echo | cat 'uuids.txt' - 'usernames.txt')"
-mapfile ids <<< $id_file
-
-bench() {
-  for id in $ids; do
-    curl -sSL -o /dev/null -w "%{url_effective} %{http_code} %{time_total}s\\n" "$host/avatars/$id?helm"
-  done
-}
-
-time bench

+ 32 - 14
test/bulk.sh

@@ -1,17 +1,35 @@
-#!/bin/bash
+#!/usr/bin/env bash
+
+async="true"
+interval="0.1"
+if [ "$1" = "-s" ]; then
+  async=""
+  shift
+elif [ "$1" = "-i" ]; then
+  interval="$2"
+  shift 2
+fi
 host="$1"
-if [ -z "$host" ]; then
-  echo "Usage: $0 <host>"
+shift
+if [ -z "$host" ] || [ ! -z "$@" ]; then
+  echo "Usage: $0 [-s | -i <interval>] <host uri>"
   exit 1
 fi
-dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-rm -f "$dir/../skins/"*.png || exit 1
-for uuid in `cat "$dir/uuids.txt"`; do
-  uuid=`echo "$uuid" | tr -d "\r"`
-  size=$(( ((RANDOM<<15)|RANDOM) % 514 - 1 )) # random number from -1 to 513
-  helm=""
-  if [ "$(( ((RANDOM<<15)|RANDOM) % 2 ))" -eq "1" ]; then
-    helm="&helm"
-  fi
-  curl -sSL -o /dev/null -w "%{url_effective} %{http_code} %{time_total}s\\n" "http://$host/avatars/$uuid?size=$size$helm"
-done
+
+# insert newline after uuids
+id_file="$(echo | cat 'uuids.txt' - 'usernames.txt')"
+mapfile ids <<< $id_file
+
+bulk() {
+  trap return INT
+  for id in $ids; do
+    if [ -z "$async" ]; then
+      curl -sSL -o /dev/null -w "%{url_effective} %{http_code} %{time_total}s\\n" -- "$host/avatars/$id?helm"
+    else
+      curl -sSL -o /dev/null -w "%{url_effective} %{http_code} %{time_total}s\\n" -- "$host/avatars/$id?helm" &
+      sleep "$interval"
+    fi
+  done
+}
+
+time bulk