Replies: 2 comments
-
|
Berdasarkan scan code ( Bottleneck utama saat kirim video
Limit default (
|
| Skenario | vCPU | RAM | Disk |
|---|---|---|---|
Minimal (1 device, compress=false, video ≤ 30s) |
1–2 | 2 GB | 20 GB SSD |
Rekomendasi umum (1 device, compress=true, video 30–60s) |
2–4 | 4 GB | 40 GB SSD |
| Ideal (multi-user, video panjang + kompresi aktif) | 4–6 | 8 GB | 60 GB SSD |
| Heavy (multi-device / throughput tinggi) | 8+ | 16 GB | 100 GB NVMe |
Saran utama: kompresi di luar GOWA
Saya lebih menyarankan kompresi video/gambar dilakukan di luar GOWA (misal di client, worker terpisah, atau pre-processing pipeline) supaya spec VPS bisa sekecil mungkin. Alasannya:
- Re-encoding H.264 adalah beban CPU terbesar di service ini. Kalau dihilangkan, VPS 1 vCPU / 1–2 GB RAM sudah cukup untuk pengiriman video panjang.
- GOWA tinggal urus upload ke WhatsApp + thumbnail (ringan).
- Pipeline jadi lebih predictable: GOWA tidak ikut spike CPU saat user kirim video panjang bersamaan.
Tips tambahan agar kirim cepat
- Matikan
compresssaat kirim — skip re-encoding H.264 (paling impactful). Kirim video yang sudah dikompres di luar. - Pre-encode video ke H.264 720p sebelum upload — ffmpeg
preset=fasttetap makan CPU-detik = durasi video × faktor. - Gunakan SSD/NVMe — temp file di
statics/senditems/ditulis + dibaca ulang (multiple IO per request). - Naikkan RAM jika sering kirim video dekat limit 100 MB — file penuh ada di memory + overhead Go runtime.
- CPU generation lebih penting dari core count untuk single-video latency (preset
fastlebih manfaat dari frekuensi tinggi).
Catatan
- FFmpeg wajib terinstall di VPS (
ConvertToJPEG,ConvertToMP4). - Mode REST dan MCP tidak bisa jalan bersamaan (batasan whatsmeow).
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Pemakaian saya scrape Foto (ukuran dibawah 1MB) dan video (durasi max
30detik, size dibawah 5MB) pada penilaian Platform E-commerce /
Marketplace.
Total Media (Foto & Video) 40-60 media. Kira-kira apa saja yang harus
dimatik selain kompres ffmpeg?
Pada Sab, 18 Apr 2026 pukul 08.40 Aldino Kemal ***@***.***>
menulis:
… Berdasarkan scan code (src/usecase/send.go, src/config/settings.go,
src/cmd/rest.go):
Bottleneck utama saat kirim video
1. *FFmpeg kompresi H.264* (send.go:822-831) — libx264 preset fast,
scale 720p, CRF 28. Ini *CPU-bound* dan paling berat. Aktif kalau
field compress=true.
2. *Thumbnail generation* (send.go:790) — wajib untuk setiap video,
ringan.
3. *Full buffering ke RAM* (send.go:848) — os.ReadFile() load seluruh
file ke memory sebelum upload ke WhatsApp (whatsmeow client.Upload
butuh []byte, bukan stream).
4. *Sequential processing* — tidak ada worker pool; 1 ffmpeg per
upload, tidak paralel.
Limit default (config/settings.go)
- MaxVideoSize = *100 MB*
- MaxImageSize = *20 MB*
- MaxFileSize = *50 MB*
- Fiber BodyLimit dipatok ke MaxVideoSize
Rekomendasi spesifikasi VPS
Skenario vCPU RAM Disk
*Minimal* (1 device, compress=false, video ≤ 30s) 1–2 2 GB 20 GB SSD
*Rekomendasi umum* (1 device, compress=true, video 30–60s) *2–4* *4 GB* 40
GB SSD
*Ideal* (multi-user, video panjang + kompresi aktif) 4–6 8 GB 60 GB SSD
*Heavy* (multi-device / throughput tinggi) 8+ 16 GB 100 GB NVMe Saran
utama: kompresi di luar GOWA
Saya *lebih menyarankan kompresi video/gambar dilakukan di luar GOWA*
(misal di client, worker terpisah, atau pre-processing pipeline) supaya
spec VPS bisa sekecil mungkin. Alasannya:
- Re-encoding H.264 adalah beban CPU terbesar di service ini. Kalau
dihilangkan, VPS *1 vCPU / 1–2 GB RAM* sudah cukup untuk pengiriman
video panjang.
- GOWA tinggal urus upload ke WhatsApp + thumbnail (ringan).
- Pipeline jadi lebih predictable: GOWA tidak ikut spike CPU saat user
kirim video panjang bersamaan.
Tips tambahan agar kirim cepat
1. *Matikan compress* saat kirim — skip re-encoding H.264 (paling
impactful). Kirim video yang sudah dikompres di luar.
2. *Pre-encode* video ke H.264 720p sebelum upload — ffmpeg preset=fast
tetap makan CPU-detik = durasi video × faktor.
3. *Gunakan SSD/NVMe* — temp file di statics/senditems/ ditulis +
dibaca ulang (multiple IO per request).
4. *Naikkan RAM* jika sering kirim video dekat limit 100 MB — file
penuh ada di memory + overhead Go runtime.
5. *CPU generation* lebih penting dari core count untuk single-video
latency (preset fast lebih manfaat dari frekuensi tinggi).
Catatan
- FFmpeg *wajib terinstall* di VPS (ConvertToJPEG, ConvertToMP4).
- Mode REST dan MCP *tidak bisa jalan bersamaan* (batasan whatsmeow).
—
Reply to this email directly, view it on GitHub
<#636?email_source=notifications&email_token=AWBHQ4G7D5BF5NRY4K7FRYL4WLMKBA5CNFSNUABIM5UWIORPF5TWS5BNNB2WEL2ENFZWG5LTONUW63SDN5WW2ZLOOQXTCNRWGA4TCOBWUZZGKYLTN5XKMYLVORUG64VFMV3GK3TUVRTG633UMVZF6Y3MNFRWW#discussioncomment-16609186>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AWBHQ4C2PWWDI64LO7TEOE34WLMKBAVCNFSM6AAAAACXQOXOWKVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTMNRQHEYTQNQ>
.
You are receiving this because you authored the thread.Message ID:
<aldinokemal/go-whatsapp-web-multidevice/repo-discussions/636/comments/16609186
@github.com>
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Rekomendasi spesifikasi vps agar cepat mengirimkan gambar dan video dengan durasi diatas 30 derik, berapa core dan ram?
Beta Was this translation helpful? Give feedback.
All reactions