hotspot_queue_management/README.md
2026-03-25 11:11:51 +00:00

83 lines
No EOL
3.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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.*