diff --git a/README.md b/README.md new file mode 100644 index 0000000..130f5cd --- /dev/null +++ b/README.md @@ -0,0 +1,83 @@ +# Hotspot Queue Management + +## Überblick +Dieses Experiment untersucht die Auswirkungen der Entkopplung von Hotspots in Job-Queues auf die Systemleistung mittels gezieltem Logging und anschließender Auswertung. Der Projektschlüssel lautet **hotspot_queue_management**. + +**Artikel:** [https://donau2space.de/tag-188-run-32-8x-hotspot-entkoppelt-separate-queue-wird-der-tail-wieder-normal/](https://donau2space.de/tag-188-run-32-8x-hotspot-entkoppelt-separate-queue-wird-der-tail-wieder-normal/) + +**Git-Repository:** [https://git.donau2space.de/Mika/hotspot_queue_management](https://git.donau2space.de/Mika/hotspot_queue_management) + +### Hinweis +Alle Inhalte wurden per KI generiert. Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko. Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert. + +## Inhalt des Repositories +Das Repository enthält Python-Skripte zur Protokollierung und Simulation von Queue-Hotspots. + +### Artefaktliste + +**1. hotspot_logging** +Art: *python_script* +Ziel: *linux-userspace* +Sprachen: Python +Zweck: Protokollierung des Anteils der near-expiry-unpinned-Jobs pro Zeitfenster zur Bestimmung der Hotspot-Intensität. + +**API-Funktion:** +- `log_hotspot_ratio(time_window, near_expiry_jobs, total_jobs)` – zeichnet den Anteil von near-expiry-Jobs im Verhältnis zur Gesamtmenge auf. + +**Datenstruktur:** +- `log_entry`: JSON-Objekt mit Feldern `timestamp`, `hotspot_ratio`. + +--- + +**2. queue_separation** +Art: *python_script* +Ziel: *linux-userspace* +Sprachen: Python +Zweck: Simulation und Analyse der Entkopplung von Hotspots in separate Queues zur Identifikation von Leistungsverbesserungen. + +**API-Funktion:** +- `simulate_queue_separation(jobs, hotspot_queue, main_queue)` – führt eine Simulationsrunde durch und liefert Leistungsmetriken. + +**Datenstruktur:** +- `performance_metrics`: JSON-Objekt mit Feldern `retry_tail_p99`, `bandwidth`, `hotspot_percentage`. + +## Installation & Nutzung +Zur Nutzung wird eine Linux-Umgebung mit installierter Python-Laufzeit benötigt. + +### Voraussetzungen +- Python 3.8 oder neuer +- Git + +### Schritte zur Einrichtung +1. Repository klonen: + ```bash + git clone https://git.donau2space.de/Mika/hotspot_queue_management + cd hotspot_queue_management + ``` +2. Abhängigkeiten installieren (falls vorhanden): + ```bash + pip install -r requirements.txt + ``` +3. Skripte ausführen: + ```bash + python hotspot_logging.py + python queue_separation.py + ``` + +## Typische Use-Cases +- Messung der Hotspot-Entwicklung über die Zeit bei Workload-Simulationen +- Bewertung der Leistungssteigerung durch Entkopplung einzelner Hotspots +- Erstellung von Analyse-Logs für nachgelagerte Datenvisualisierung +- Vergleich verschiedener Queue-Strategien hinsichtlich Stabilität und Durchsatz + +## Struktur & mögliche Erweiterungen +Das Repository ist modular aufgebaut und erlaubt einfache Erweiterung der Logging- und Simulationslogik. +Mögliche Erweiterungen: +- Integration einer automatischen Auswertungsroutine für Log-Dateien +- Ergänzung um statistische Analyse- und Visualisierungsmodule +- Implementierung von Echtzeit-Monitoring über REST-Interface + +## Lizenz +Dieses Projekt steht unter der **MIT-Lizenz**. + +*Hinweis: Diese README wurde automatisch durch eine KI erstellt. Nutzung auf eigene Gefahr.* \ No newline at end of file