[[Vorlage(Getestet, bionic)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] }}} [[Inhaltsverzeichnis(1)]] [[Bild(Wiki/Icons/terminal.png, 48, align=left)]] [https://www.joedog.org/siege-home/ Siege] {en} ist ein von Jeffrey Fulmer geschriebenes Kommandozeilen-Werkzeug zur Durchführung von [wikipedia:Http:HTTP-/HTTPS]-[wikipedia:Regressionstest:Regressionstests] und Leistungsvergleichen (Benchmarks). Es kann eine einzelne URL einem Belastungstest mit einer einstellbaren Menge an simulierten Benutzern unterziehen oder viele URLs in den Speicher laden und diese gleichzeitig hoher Belastung aussetzen. Das Programm erstellt einen Bericht mit der Gesamtanzahl an Treffern, den übertragenen Bytes, der Antwortzeit, gleichzeitigem Zugriff und Antwortstatus. Siege unterstützt die Protokolle HTTP/1.0 und 1.1, GET- und POST-Direktiven, Cookies, Transaktionsaufzeichnung und einfache Authentifizierung. Die Eigenschaften sind für jeden Benutzer individuell einstellbar. = Installation = Siege ist in den offiziellen Paketquellen enthalten. Dazu muss man das folgende Paket installieren [1]: {{{#!vorlage Paketinstallation siege }}} = Bedienung = Im Wesentlichen startet man Siege mit folgendem Befehl [2] {{{#!vorlage Befehl siege [OPTIONEN] URL }}} == Optionen == {{{#!vorlage Tabelle <-4 tablestyle="width: 100%;" rowclass="titel" > '''Funktionsübersicht''' +++ '''Option''' Alternative Parameter Beschreibung +++ `--version` `-V` `-` Gibt die aktuelle Version zurück +++ `--help` `-h` `-` Gibt die Hilfeseite zurück +++ `--config` `-C` `-` Gibt die aktuelle Konfigurationsdatei zurück ('''~/.siegerc'''), falls diese nicht existiert kann mittels Befehl [2] siege.config eine erstellt werden. +++ `--verbose` `-v` `-` Gibt während des Tests Antwort-Informationen zurück (bspw: HTTP/1.1 200 0.00 secs: 2728 bytes ==> example.com) +++ `--get URL` `-g URL` `-` Mit dieser Option können die von der URL zurückgegebenen Header-Informationen angezeigt werden. +++ `--concurrent=NUM` `-c NUM` `-` Setzt die Anzahl simulierter User +++ `--internet` `-i` `-` - +++ `--time=NUMm` `-t NUMm` `s, m, h` Setzt ein Laufzeit-Limit (`--time=3600s` = 3600 Sekunden) +++ `--file=FILE` `-f FILE` `-` - +++ `--log` `-l` `-` - +++ `--mark=MESSAGE` `-m MESSAGE` `-` - +++ `--delay=NUM` `-d NUM` `-` - }}} == Anwendungsbeispiele == {{{#!vorlage Befehl siege -c 5 -b -t30s http://www.example.org }}} ergibt: {{{ Lifting the server siege... done. Transactions: 1196 hits Availability: 100.00 % Elapsed time: 29.70 secs Data transferred: 10.72 MB Response time: 0.12 secs Transaction rate: 40.27 trans/sec Throughput: 0.36 MB/sec Concurrency: 4.99 Successful transactions: 1196 Failed transactions: 0 Longest transaction: 3.76 Shortest transaction: 0.08 }}} == URL-Format == Die derzeit unterstützten Protokolle sind HTTP und HTTPS. Des Weiteren ist es nicht erforderlich, die URL komplett anzugeben, für einen erfolgreichen Test reicht meist die Domain (FQDN) oder bei lokalen Tests der Servername aus. Siege unterstützt folgendes Format: {{{ [protocol://] [servername.domain.tld] [:portnummer] [/verzeichnis/datei] }}} = Links = * [https://www.joedog.org/siege-home/ Projektseite] {en} * [https://www.joedog.org/siege-faq/ FAQ] {en} - Häufige Fragen und Antworten * [https://www.joedog.org/siege-manual/ Manual] {en} - Dokumentation * [:Benchmarks:] {Übersicht} Übersichtsartikel #tag: Programmierung, Debugging, Benchmark, Server