PRODمنصة BaaS الأوروبية السياديةافتح لوحة المعلومات →
REALTIME · NATIVE SYNC

المزامنة، الحضور،
بث.

Auto-negotiated WebSocket, SSE, and NATS. Presence, replay, guaranteed ordering, explicit backpressure. 1M connections per POP, sub-15ms p99 fanout.

14ms
P99 FANOUT
1M
CNX/POP
3
TRANSPORTS
app/dashboard/live.tsxTYPESCRIPT
const channel = aura.channel('sensors:live')
channel
.on('postgres_changes', {
event: 'INSERT',
schema: 'public',
table: 'sensors',
filter: 'tenant_id=eq.${tid}',
}, ({ new: row }) => render(row))
.subscribe()
// Auto-negotiates WebSocket → SSE → NATS based on network
#
مجموعة الميزات

من المزامنة البدائية إلى اللعب الجماعي في الوقت الفعلي

3 auto-negotiated transports

WebSocket first, then SSE, then server-side NATS. The client selects the optimal protocol based on network conditions.

WS · SSE · NATS

Presence API

Who is currently in the room, custom state, join/leave events. Consistent hashing for cross-region state reconciliation.

< 20ms SYNC

Multiplex N channels

Open 1,000 channels over a single TCP connection. Atomic subscribe/unsubscribe with zero extra connection overhead.

N CHANNELS · 1 TCP

Backpressure & ordering

Guaranteed ordering per channel, configurable client buffer, explicit drop policy. No silent duplications.

EXACTLY-ONCE PER-KEY

Event replay

Replays the last N events upon reconnection. Configured per channel, default retention of 100 messages or 60 seconds.

REPLAY WINDOW · 60s

Collab cursors

Native collaborative cursor primitives for multi-user apps. Server-side adaptive throttling, client-side interpolation.

60 FPS · THROTTLED
#
تغذية حية

فحص تدفق الإنتاج في الوقت الحقيقي

معاينة دفق الإنتاج مجهول المصدر. يتم إلغاء تكرار كل حدث وترتيبه لكل قناة، ويتم نشره في أقل من 15 مللي ثانية لجميع المشتركين النشطين.

البث · eu-west-3 · معرف القناة = LIVE_SAMPLE
مباشرفانوت · 9 مللي ثانيةالعملاء · 12,418
14:32:08.412INSERTsensors:live·{ device_id: "dvc_9f2a", temp: 24.7 }
14:32:08.510PRESENCEdoc:42·user_j8k joined · cursor@(340, 120)
14:32:09.001UPDATEorders:live·{ id: "ord_77c", status: "shipped" }
14:32:09.188BROADCASTchat:general·{ event: "typing", user: "ci_42" }
14:32:09.440INSERTsensors:live·{ device_id: "dvc_4a1", temp: 23.9 }
14:32:09.702PRESENCEdoc:42·user_n3e left
14:32:10.020DELETEsessions:live·{ session_id: "sess_0x4" }
14:32:10.155BROADCASTgame:room-8·{ event: "move", coords: [12, 44] }
#
الأداء

معايير تم التحقق منها، لا يوجد زغب تسويقي

14ms
P99 FANOUT
Median 6ms — 1M concurrent clients, 12 active regions
1M
CONNECTIONS / POP
Per point of presence, standard edition
256KB
MAX MSG
Per message — automatic chunking beyond
#
مقارنة

Aurabase · Supabase · باقتدار

ميزةأوراباسيسوباباسباقتدار
TransportsWS · SSE · NATSWS onlyWS · Binary
Native presenceIncludedIncludedIncluded
Postgres CDCIncludedIncludedNo
Event replayConfigurableNoYes (Ably)
MultiplexingUnlimited100 channels200 channels
BillingConnection × minConnection × hrMessage × event
Open sourceApache 2.0MITProprietary
#
الأسئلة الشائعة

الأسئلة المتداولة

What is the difference between WebSocket, SSE, and NATS?+
WebSocket هو ثنائي الاتجاه وهو وسيلة النقل الافتراضية لدينا. SSE هو خادم إلى عميل أحادي الاتجاه (مفيد خلف وكلاء الشركات المقيدين). NATS هو النقل بين الخدمات داخل بنيتنا التحتية - على Aurabase VPC، يمكنك ربط العامل مباشرة بـ NATS للحصول على زمن استجابة من عملية إلى معالجة أقل من مللي ثانية.
Are messages guaranteed exactly-once?+
مرة واحدة بالضبط لكل مفتاح داخل القناة (الطلب وإلغاء البيانات المكررة عبر message_id من جانب الخادم). يتم عرض القنوات المتقاطعة مرة واحدة على الأقل — حيث يتم الكشف عن SDK Seen_ids لإلغاء التكرار من جانب العميل إذا لزم الأمر.
How do you scale beyond 1M concurrent connections?+
إضافة الملوثات العضوية الثابتة. يقبل كل بروتوكول POP مليون اتصال. يتم تقسيم حالة التواجد باستخدام التجزئة المتسقة ويتم نسخها عبر 3 نسخ.
Can we filter Postgres CDC changes server-side?+
نعم. filter: 'tenant_id=eq.$1' يتم تقييمه من جانب الخادم مقابل WAL، بحيث يتلقى العملاء فقط التغييرات التي تهمهم. تنطبق سياسات Postgres RLS على أحداث الوقت الفعلي أيضًا.
What about offline mode?+
يحتفظ SDK بمخزن مؤقت محلي (IndexedDB/AsyncStorage) ويعيد تشغيل الأهداف عند إعادة الاتصال. يتم حل التعارضات عبر ساعات متجهة اختيارية أو مكاسب الكتابة الأخيرة القابلة للتكوين لكل قناة.
What is the real pricing model?+
خطة مجانية: 100 اتصال متزامن × 1 ساعة/يوم. الخطة الاحترافية: 100 ألف اتصال × إجمالي ساعات الاتصال في الشهر بسعر 0.015 يورو لكل 1 ألف ساعة اتصال. لا توجد فوترة لكل رسالة في الطبقة الاحترافية.
الوقت الحقيقي ممكن افتراضيا

افتح قناة واستمع إلى الإنتاج مباشرة.

التكوين صفر مطلوب. قناة واحدة وثلاثة أسطر من التعليمات البرمجية ولوحة تحكم حية.

لا حاجة لبطاقة ائتمان · 500 ميجابايت مجانًا · 50000 MAU