hetzner-chmurki/checkin.ipynb

665 lines
103 KiB
Plaintext
Raw Normal View History

2023-01-29 23:54:19 +01:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.070s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.074s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.070s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.075s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.072s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.069s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.067s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.068s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.076s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.069s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.073s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.071s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 3\treqs: 5\tmean time: 0.068s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.077s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.067s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.059s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 3\treqs: 5\tmean time: 0.062s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.068s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.074s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 4\treqs: 5\tmean time: 0.076s\t\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.056s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 3\treqs: 5\tmean time: 0.060s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.064s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.081s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 4\treqs: 5\tmean time: 0.075s\t\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.065s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 3\treqs: 5\tmean time: 0.064s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.066s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.073s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 4\treqs: 5\tmean time: 0.060s\t\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.059s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 4\treqs: 2\tmean time: 0.079s\t\n",
"INFO:root:Thread: 3\treqs: 5\tmean time: 0.066s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.072s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.066s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 3\treqs: 3\tmean time: 0.061s\t\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.061s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 5\tmean time: 0.064s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.067s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 2\treqs: 4\tmean time: 0.058s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.053s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 1\treqs: 5\tmean time: 0.053s\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.059s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.064s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 5\tmean time: 0.062s\tfast\t\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"ERROR:root:wrong status code from webservice\n",
"INFO:root:Thread: 0\treqs: 4\tmean time: 0.072s\tfast\t\n"
]
}
],
"source": [
"import requests\n",
"import random\n",
"import math\n",
"import time\n",
"import threading\n",
"import logging\n",
"logging.getLogger().setLevel(logging.INFO)\n",
"\n",
"\n",
"API_URL=\"http://95.217.175.172:8080\"\n",
"\n",
"\n",
"UNIT = 5.0 # secs\n",
"\n",
"# Pre generated primes\n",
"first_primes_list = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29,\n",
" 31, 37, 41, 43, 47, 53, 59, 61, 67,\n",
" 71, 73, 79, 83, 89, 97, 101, 103,\n",
" 107, 109, 113, 127, 131, 137, 139,\n",
" 149, 151, 157, 163, 167, 173, 179,\n",
" 181, 191, 193, 197, 199, 211, 223,\n",
" 227, 229, 233, 239, 241, 251, 257,\n",
" 263, 269, 271, 277, 281, 283, 293,\n",
" 307, 311, 313, 317, 331, 337, 347, 349]\n",
"\n",
"\n",
"def nBitRandom(n):\n",
" return random.randrange(2**(n-1)+1, 2**n - 1)\n",
" \n",
"def getLowLevelPrime(n):\n",
" '''Generate a prime candidate divisible\n",
" by first primes'''\n",
" while True:\n",
" # Obtain a random number\n",
" pc = nBitRandom(n)\n",
" \n",
" # Test divisibility by pre-generated\n",
" # primes\n",
" for divisor in first_primes_list:\n",
" if pc % divisor == 0 and divisor**2 <= pc:\n",
" break\n",
" else: return pc\n",
" \n",
"def isMillerRabinPassed(mrc):\n",
" '''Run 20 iterations of Rabin Miller Primality test'''\n",
" maxDivisionsByTwo = 0\n",
" ec = mrc-1\n",
" while ec % 2 == 0:\n",
" ec >>= 1\n",
" maxDivisionsByTwo += 1\n",
" assert(2**maxDivisionsByTwo * ec == mrc-1)\n",
" \n",
" def trialComposite(round_tester):\n",
" if pow(round_tester, ec, mrc) == 1:\n",
" return False\n",
" for i in range(maxDivisionsByTwo):\n",
" if pow(round_tester, 2**i * ec, mrc) == mrc-1:\n",
" return False\n",
" return True\n",
" \n",
" # Set number of trials here\n",
" numberOfRabinTrials = 20\n",
" for i in range(numberOfRabinTrials):\n",
" round_tester = random.randrange(2, mrc)\n",
" if trialComposite(round_tester):\n",
" return False\n",
" return True\n",
" \n",
"def random_large_prime(bits):\n",
" while True:\n",
" prime_candidate = getLowLevelPrime(bits)\n",
" if not isMillerRabinPassed(prime_candidate):\n",
" continue\n",
" else:\n",
" return prime_candidate\n",
"\n",
"def thread_function(i, fast, timeout):\n",
" start = time.time()\n",
"\n",
" c = 5 # bits: 20: 200ms; 21: 350ms; 22: 700ms 23: 1.5s; 25: 6s; 26: 10s; 27: 24s\n",
" bits = 19 if fast else 23\n",
" last_report = time.time()\n",
" processing_time = 0.0\n",
" reqs = 0\n",
" while True:\n",
" iter_start = time.time()\n",
" if iter_start - start > timeout:\n",
" logging.info(\"Thread: %d\\treqs: %d\\tmean time: %.3fs\\t%s\"%(i, reqs, processing_time/reqs if reqs>0 else 0.0, \"fast\\t\" if fast else \"\"))\n",
" results[i][iter_start] = processing_time/reqs if reqs>0 else 0.0\n",
" return\n",
" if iter_start - last_report > UNIT/2:\n",
" if len(results[i])%2 == 0:\n",
" logging.info(\"Thread: %d\\treqs: %d\\tmean time: %.3fs\\t%s\"%(i, reqs, processing_time/reqs if reqs>0 else 0.0, \"fast\\t\" if fast else \"\"))\n",
" results[i][iter_start] = processing_time/reqs if reqs>0 else 0.0\n",
" processing_time = 0.0\n",
" reqs = 0\n",
" last_report=iter_start\n",
"\n",
" factors = [random_large_prime(bits) for i in range(c)]\n",
" factors.sort()\n",
" n=math.prod(factors)\n",
"\n",
" r = requests.get(API_URL+'/factors/%d'%(n))\n",
" if r.status_code != 200:\n",
" logging.error(\"wrong status code from webservice\")\n",
" else:\n",
" result = r.json()\n",
" if result != factors:\n",
" logging.error(\"Wrong factors\")\n",
"\n",
" processing_time+=time.time() - iter_start\n",
" reqs+=1\n",
" time.sleep(0.5)\n",
"\n",
"START = time.time()\n",
"slow_threads = 4\n",
"\n",
"results = [ {} for i in range(slow_threads+1)]\n",
"\n",
"t0 = threading.Thread(target=thread_function, args=(0, True, (5 + slow_threads*3) * UNIT))\n",
"t0.start()\n",
"time.sleep(2 * UNIT)\n",
"for i in range(slow_threads):\n",
" t = threading.Thread(target=thread_function, args=(i+1, False, (slow_threads-i) * 3 * UNIT))\n",
" t.start()\n",
" time.sleep(2 * UNIT)\n",
"\n",
"t0.join()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import scipy.stats as stats\n",
"mu = 0\n",
"std = 1\n",
"for i, result in enumerate(results):\n",
" x = [(x - START)/UNIT for x in result.keys()]\n",
" y = result.values()\n",
" plt.plot(x, y, label=\"t%d\"%(i,))\n",
"\n",
"plt.legend()\n",
"plt.show()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.9"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "736888a2fe7f30701e403545cd826a09e7b18a72829f1395b89a416eae077a79"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}