Realtime
Realtime es un fanout dentro del daemon del Cloud: POST …/realtime/publish entrega un evento (canal, nombre, payload JSON) a cada suscriptor conectado a ese canal en ese instante por GET …/realtime/sse. Ese es todo el mecanismo.
- Los eventos existen solo mientras el daemon corre y solo para los suscriptores conectados al publicar, más una reproducción en memoria de cortesía de los últimos 64 eventos por canal para clientes que reconectan con
Last-Event-ID. - La entrega es como máximo una vez, sin acuse. Nada se escribe en ningún directorio Native; un reinicio descarta cada suscriptor y cada evento en búfer. No es un feed de cambios de Native ni un WAL.
- El canal
systemlo emiten las rutas del Cloud después de actuar —project.woke,project.slept,storage.object.stored,storage.object.deleted,snapshot.created,project.restored— y no admite publicaciones.
Límites
Sección titulada «Límites»| Nombre de canal | 1–64 caracteres: a-z 0-9 . _ - |
| Nombre de evento | 1–64 caracteres: a-z A-Z 0-9 . _ - : |
| Payload | 32 KiB de JSON |
| Canales por conexión | 16 |
| Conexiones por credencial | 32 |
| Stream inactivo | se cierra tras CLOUDD_REALTIME_IDLE_SECS (300 s) sin eventos; los comentarios keep-alive cada 15 s no cuentan |
Tanto la sesión del propietario como una clave de proyecto viva pueden publicar y suscribirse. Revocar una clave cierra sus streams abiertos de inmediato. No hay transporte WebSocket, ni orden entre canales, ni fanout entre hosts: un host, un daemon.