PROD주권 유럽 BaaS 플랫폼대시보드 열기 →
아큐엘/제품/REALTIME
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
#
라이브 피드

실시간 생산 흐름 검사

익명화된 생산 스트림 미리보기. 모든 이벤트는 중복 제거되고 채널별로 정렬되어 15ms 이내에 모든 활성 구독자에게 전파됩니다.

스트림 · eu-west-3 · 채널_ID = LIVE_SAMPLE
라이브팬아웃 · 9ms고객 · 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
#
비교

아우라베이스 · 수파베이스 · 에이블리

특징아우라베이스수파베이스에이블리
TransportsWS · SSE · NATSWS onlyWS · Binary
Native presenceIncludedIncludedIncluded
Postgres CDCIncludedIncludedNo
Event replayConfigurableNoYes (Ably)
MultiplexingUnlimited100 channels200 channels
BillingConnection × minConnection × hrMessage × event
Open sourceApache 2.0MITProprietary
#
FAQ

자주 묻는 질문

What is the difference between WebSocket, SSE, and NATS?+
WebSocket은 양방향이며 기본 전송입니다. SSE는 단방향 서버-클라이언트입니다(제한적인 기업 프록시 뒤에 유용함). NATS는 인프라 내부의 서비스 간 전송입니다. Aurabase VPC에서는 밀리초 미만의 프로세스 간 지연 시간을 위해 작업자를 NATS에 직접 연결할 수 있습니다.
Are messages guaranteed exactly-once?+
채널 내 키당 정확히 한 번(서버 측 message_id를 통한 순서 지정 및 중복 제거) 교차 채널은 최소 한 번 — SDK가 노출합니다. 본_ID 필요한 경우 클라이언트 측에서 중복을 제거합니다.
How do you scale beyond 1M concurrent connections?+
POP를 추가하세요. 각 POP는 100만 개의 연결을 허용합니다. 현재 상태는 일관된 해싱을 사용하여 분할되고 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,000개의 연결 × 해당 월의 총 연결 시간, 1,000개의 연결 시간당 €0.015. Pro 계층에서는 메시지당 요금이 청구되지 않습니다.
기본적으로 실시간 활성화

채널을 열고 라이브로 프로덕션을 들어보세요.

제로 구성이 필요합니다. 하나의 채널, 세 줄의 코드, 살아있는 대시보드.

신용카드 불필요 · 500MB 무료 · 50,000 MAU