Skjermen: ytelsesanalyse for nåværende server
8-kjerners EPYC, 16 GB RAM, 270 Mbit/s. Klientside compositing takler 3+ samtidige team. Server-side begrenset til 1 sesjon. Strategi: klientside default, server-side som valgfri premium. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
38dbf98e63
commit
9781bd5d0e
1 changed files with 64 additions and 0 deletions
|
|
@ -278,6 +278,70 @@ Ved sceneskifte med pause:
|
|||
- Server-side compositing (FFmpeg)
|
||||
- Opptak med pause/resume og markører
|
||||
|
||||
## Ytelsesanalyse (mars 2026)
|
||||
|
||||
### Serverspesifikasjoner
|
||||
|
||||
- 8 kjerner AMD EPYC @ 2.4 GHz (ingen hyperthreading)
|
||||
- 16 GB RAM (~10 GB tilgjengelig)
|
||||
- 204 GB ledig disk
|
||||
- ~270 Mbit/s båndbredde (Hetzner)
|
||||
- Ingen GPU
|
||||
|
||||
### Video-strømmer (LiveKit SFU)
|
||||
|
||||
LiveKit er en SFU (Selective Forwarding Unit) — den videresender
|
||||
strømmer uten transkoding. Minimal CPU, primært båndbredde.
|
||||
|
||||
- 3 deltakere: 9 strømmer (3 inn + 6 ut), ~15-25 Mbit/s
|
||||
- 10 deltakere: 100 strømmer, ~150-250 Mbit/s uten simulcast
|
||||
- 10 deltakere med simulcast: ~80-120 Mbit/s (realistisk)
|
||||
- LiveKit RAM: ~50-100 MB per sesjon med 3 deltakere
|
||||
|
||||
### Server-side compositing (FFmpeg)
|
||||
|
||||
FFmpeg compositor: flere video-strømmer → én output.
|
||||
- 3 strømmer @ 720p → 1080p: ~2-3 CPU-kjerner kontinuerlig
|
||||
- RAM: ~500 MB - 1 GB per FFmpeg-instans
|
||||
|
||||
### Kapasitetstabell
|
||||
|
||||
| Scenario | Gjennomførbart? | Flaskehals |
|
||||
|----------|----------------|------------|
|
||||
| 3 deltakere, klientside opptak | ✅ Enkelt | Ingen |
|
||||
| 3 deltakere, server compositing | ✅ Ja | 2-3 CPU-kjerner |
|
||||
| 10 deltakere, klientside | ✅ Ja (med simulcast) | Båndbredde |
|
||||
| 10 deltakere, server compositing | ⚠️ Grenseland | CPU + båndbredde |
|
||||
| 3 samtidige team, klientside | ✅ Ja | LiveKit RAM |
|
||||
| 3 samtidige team, server comp. | ❌ Nei | CPU (trenger 6-9 kjerner) |
|
||||
| 3 team klient + 1 team server | ✅ Ja | Balansert |
|
||||
|
||||
### Strategi
|
||||
|
||||
**Klientside compositing som default.** Skjerm-panelet bruker
|
||||
Canvas API til å komponere video-strømmene i nettleseren.
|
||||
Opptak via MediaRecorder API. Serveren bare videresender strømmer.
|
||||
|
||||
Fordeler:
|
||||
- Serveren belastes minimalt — skalerer til mange samtidige team
|
||||
- Null ekstra CPU for compositing
|
||||
- Lavere latens (ingen round-trip til server)
|
||||
|
||||
Ulemper:
|
||||
- Opptak-kvalitet avhenger av klientens maskin
|
||||
- Klienten må ha nok CPU (moderne laptop/desktop er nok)
|
||||
|
||||
**Server-side compositing som valgfri premium:**
|
||||
- For opptak i høyere kvalitet enn klienten klarer
|
||||
- For eksport/re-rendering i etterkant
|
||||
- Begrenset til én sesjon om gangen på nåværende server
|
||||
- Købasert: "bestill rendering" → jobbkø → ferdig → varsling
|
||||
|
||||
**Oppgradering ved behov:**
|
||||
- 16-kjerner, 32 GB hos Hetzner: ~€30/mnd ekstra
|
||||
- Gir kapasitet for 2-3 samtidige server-side compositinger
|
||||
- Eller: dedikert render-server (billig Hetzner-boks kun for FFmpeg)
|
||||
|
||||
## Prioritet
|
||||
|
||||
Høy ambisjon, kan bygges inkrementelt:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue