Self-hosting de Kilden
Kilden está construido para poder auto-hospedarse, y el self-hosting se documentará aquí cuando salga nuestro release open source. Sin promesas de fechas — preferimos publicarlo funcionando antes que anunciado.
Qué estarías operando
Sección titulada «Qué estarías operando»La preview honesta. Kilden es una flota pequeña de servicios sin estado alrededor de cuatro piezas de infraestructura — streaming compatible con Kafka, ClickHouse, Postgres, Redis, y object storage compatible con S3 para replay:
SDKs / webhooks de proveedores / fuentes externas │ ▼ capture ──► events_raw (key: distinct_id) │ ▼ enricher ──► Postgres (personas, identidades) │ ▼ events_enriched (key: person_id) │ │ │ │ ▼ ▼ ▼ ▼ warehouse campaign CDP live tail writer matcher sync │ │ │ │ ▼ ▼ ▼ ▼ panel (websocket) ClickHouse journeys destinos (PG) → scheduler → dispatcher → proveedor de email │ webhooks del proveedor ─┘ (reingresan por capture)Session replay toma un camino paralelo: los chunks de grabación van al object storage, por Kafka solo viajan punteros de ~200 bytes, y un indexador construye el índice de sesiones en ClickHouse.
Las propiedades que lo hacen operable:
- Los servicios no tienen estado — todo el estado vive en las bases de datos y los offsets de los consumers, así que todo escala horizontalmente y los reinicios son aburridos.
- Entrega at-least-once con bordes idempotentes — cada capa puede reintentar con seguridad; la deduplicación por UUIDs generados en el cliente lo vuelve exactly-once donde importa.
- Un solo camino de escritura — cada evento entra por capture, así que hay exactamente una cosa que asegurar, limitar y monitorear para la ingesta.
Mientras tanto
Sección titulada «Mientras tanto»Kilden Cloud es la versión hosteada de exactamente esta arquitectura — mismo código, mismas garantías. Todo lo demás en esta documentación aplica a ambas.