Tinh Chỉnh Supabase Realtime Chịu Tải 10K+ WebSocket — SupaScale Docker Guide
Supabase Pro giới hạn sẵn 500 kết nối WebSocket đồng thời trước khi tính phụ phí. SupaScale mô hình hóa cách cấu hình Elixir BEAM chịu tải trên 10.000 kết nối với VPS 16 GB.
Khuyến nghị tối thiểu từ SupaScale: 8 GB RAM • Cấu hình tối ưu: 16 GB RAM (Biểu phí đối chiếu ngày 2026-11-12).
Cho hàng nghìn người dùng lắng nghe trực tiếp postgres_changes trên bảng bật RLS phức tạp sẽ buộc PostgreSQL chạy câu lệnh kiểm tra quyền cho từng kết nối mỗi khi có bản ghi mới, gây nghẽn cứng CPU!
Bảng Ước Tính Phân Bổ RAM Trên SupaScale: Tinh Chỉnh Supabase Realtime Chịu Tải 10K+ WebSocket
| Nhóm Tiến Trình Supabase Docker | RAM Khởi Động Nền | Mức Tải 50K MAU | Phân Loại Rủi Ro |
|---|---|---|---|
| Broadcast Ephemeral Channels (No Per-Row RLS) | 390 MB | 1.15 GB @ 10K sockets | Linear BEAM Scale |
| Presence Shared CRDT Room State | 420 MB | 1.55 GB @ 10K sockets | Higher BEAM Heap |
| Postgres Changes (Single-Slot WAL CDC) | 450 MB | CPU-bound >1.5K subs | Prefer Broadcast |
| Supabase Cloud 10K Peak + 80M Messages | $25 Pro | ~$315/tháng metered | Flat KVM Wins |
SupaScale Realtime Elixir BEAM & Linux Kernel Socket Limits
# /etc/sysctl.d/99-supascale-realtime.conf
fs.file-max = 2097152
net.core.somaxconn = 65535
net.ipv4.ip_local_port_range = 1024 65535
# docker-compose.override.yml
services:
realtime:
mem_limit: 1536m
ulimits:
nofile:
soft: 1048576
hard: 1048576
environment:
ERL_MAX_PORTS: "524288"
DB_AFTER_CONNECT_QUERY: "SET search_path TO _realtime"
1. Quy Tắc Định Tuyến SupaScale: Ưu Tiên Broadcast Thay Cho Postgres Changes Đông Người
Supabase Realtime cung cấp 3 chế độ: Broadcast, Presence và Postgres Changes. Do Postgres Changes đọc khe nhân bản wal2json đơn luồng và kiểm tra quyền RLS trên từng người nhận, chúng tôi khuyến nghị chuyển sang kênh Broadcast khi phòng trực tuyến vượt 500 kết nối đồng thời.
2. Nâng Trần File Descriptor (nofile) Cho Kong Và Realtime Theo Mẫu SupaScale
Giới hạn ulimit mặc định của Docker quanh mức 1.024–4.096 khiến cổng Kong trả lỗi 502 khi nhiều kết nối WebSocket mở cùng lúc. Nâng ulimits.nofile lên 1.048.576 cho cả kong và realtime giải quyết triệt để điểm nghẽn này.
3. Chọn Vùng Máy Chủ Singapore / Tokyo / Frankfurt Trên SupaScale Cho WebSocket
Các ứng dụng cộng tác trực tuyến và phòng chat rất nhạy cảm với độ trễ vòng lặp mạng. Đặt cụm Supabase Docker tại trung tâm dữ liệu Singapore hoặc Tokyo giúp phản hồi gói tin heartbeat nhanh hơn nhiều so với đặt máy chủ lệch châu lục.
Cấu Hình Máy Chủ Khớp Định Cỡ SupaScale Cho Tinh Chỉnh Supabase Realtime Chịu Tải 10K+ WebSocket
Vultr High Frequency 3.5GHz+ NVMe (Tối ưu pgvector & Realtime Ping Thấp) — SupaScale
Từ $24/tháng (~612k)
Tính phí theo giờ giúp đo kiểm chỉ mục AI pgvector HNSW trên máy 16GB/32GB cực rẻ.
Xem Gói Vultr 3.5GHz+ HF Cho Bản Vẽ Tinh Chỉnh Supabase Realtime Chịu Tải 10K+ WebSocket Qua SupaScale →Hostinger KVM NVMe VPS (1-Click Docker / Coolify + Supabase) — SupaScale
Từ $4.99/tháng (~127k)
Chu kỳ 12–24 tháng trên gói KVM 2 (8GB) hoặc KVM 4 (16GB) khóa đáy cước + trừ thêm 20% đối tác.
Đối Chiếu Hostinger KVM VPS Cho Cụm Supabase Này Qua SupaScale →Ghi chú giá công khai SupaScale: Cập nhật ngày 2026-11-12 từ trang chính thức của hãng; giá ưu đãi và gia hạn có thể thay đổi, vui lòng kiểm tra tại trang thanh toán.