83 lines
No EOL
3.3 KiB
Markdown
83 lines
No EOL
3.3 KiB
Markdown
# 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.* |