Process Host
Process Host
Abschnitt betitelt „Process Host“Process Hosts verwalten die Ausführung von Lua-Prozessen mit einem Work-Stealing-Scheduler.
Entry-Typ
Abschnitt betitelt „Entry-Typ“| Kind | Beschreibung |
|---|---|
process.host | Prozessausführungs-Host mit Scheduler |
Konfiguration
Abschnitt betitelt „Konfiguration“- name: main_host kind: process.host host: workers: 8 queue_size: 1024 local_queue_size: 256 lifecycle: auto_start: true| Feld | Typ | Standard | Beschreibung |
|---|---|---|---|
workers | int | NumCPU | Worker-Goroutinen |
queue_size | int | 1024 | Globale Queue-Kapazität |
local_queue_size | int | 256 | Pro-Worker lokale Deque-Größe |
Scheduler
Abschnitt betitelt „Scheduler“Der Scheduler verwendet Work-Stealing: Jeder Worker hat eine lokale Deque, und untätige Worker stehlen aus der globalen Queue oder von anderen Workern. Dies balanciert die Last automatisch aus.
- Workers führen Prozesse nebenläufig aus
- Globale Queue hält ausstehende Prozesse wenn alle Worker beschäftigt sind
- Lokale Queues reduzieren Konflikte indem sie Arbeit nah bei den Workern halten
Prozesstypen
Abschnitt betitelt „Prozesstypen“Process Hosts führen Einträge dieser Typen aus:
| Kind | Beschreibung |
|---|---|
process.lua | Quellbasierter Lua-Prozess |
process.lua.bc | Vorkompilierter Lua-Bytecode |
process.wasm | WebAssembly-Prozess (experimentell) |
Prozesse laufen unabhängig mit eigenem Kontext, kommunizieren über Nachrichten und werden für Fehlertoleranz überwacht.
Siehe auch
Abschnitt betitelt „Siehe auch“- Prozess-Modul - Prozesse aus Lua starten und verwalten
- WASM-Prozesse - Konfiguration von
process.wasm-Einträgen - Prozessmodell - Konzepte zu Lebenszyklus und Supervision
- Supervision - Aufbau von Supervision-Bäumen