Arquitectura
Cada componente, y dónde se ejecuta
Alojado en la UE en una VM de Hetzner en Alemania, tras Cloudflare. Todo el sistema cabe en una vista — y los únicos subencargados son Cloudflare, Paddle y SMTP2GO.
Clientes
Browser
steadycron.com
Sitio y documentación
Browser
app.steadycron.com
Interfaz del panel
CLI / scripts
api.steadycron.com
REST + manifiestos
Your cron
ping.steadycron.com
Pings de heartbeat
Cloudflare
DNS · TLS · WAF · CDN
Proxy edge, firewall y limitación de tasa delante de todo.
Cloudflare Pages
Astro · static
Este sitio, servido en el edge — nunca toca la VM.
Caddy
reverse proxy
En la VM: TLS automático, enruta app. / api. / ping. a los contenedores.
VM de Hetzner · Alemania · Docker Compose
Dashboard
steadycron-dashboard
Next.js. UI autenticada; llama a la API por la red interna.
API + Ping
steadycron-api · .NET
REST · ingesta de ping · vista previa de cron · variables · actividad · admin.
steadycron-scheduler · Quartz.NET clustered
HTTP executor
Polly · SSRF guard
Hace las llamadas HTTPS programadas — reintentos, timeouts, re-chequeo de redirecciones.
Heartbeat watcher
30s tick
Detecta ejecuciones perdidas o atascadas según el periodo de gracia.
Alert dispatcher
outbox · NOTIFY
Vacía la outbox; moldea, entrega y reintenta las alertas.
Background workers
×4 services
Flush de envíos, detección de anomalías, poda de retención, reconciliación de Paddle.
PostgreSQL 17
app · Quartz · outbox
Una instancia para todo. LISTEN/NOTIFY reemplaza un broker — sin Redis.
Backups
nightly · encrypted
pg_dump cifrado, enviado fuera del sitio; pruebas de restauración trimestrales.
Servicios externos y tus sistemas
Your endpoints
the jobs we call
Tus handlers HTTPS, llamados según el calendario.
Alert channels
Slack · Discord · …
Telegram, webhook, correo — solo saliente.
Paddle
billing · MoR
Merchant of Record — gestiona los impuestos. Sin datos de tarjeta aquí.
SMTP2GO
Verificación, restablecimiento de contraseña y alertas por correo.