Time-Based Automation

Zeitsteuerung.
Überall, wo dein
Code läuft.

Anwendungen, Hosts und Cloud-Dienste zentral zeitgesteuert starten: SyncCronA verbindet Zeitpläne mit den passenden Ausführungszielen. Für APIs, Jobs, Skripte, Container und Functions — mit einem gemeinsamen Blick auf ihre Ausführung.

Die Plattform entsteht schrittweise. MVP 0.1.0 startet mit .NET-Handlern; Host- und Cloud-Anbindungen sind geplant.
ZENTRALE ZEITSTEUERUNGZielbild der Plattform
Einmalig · Intervall · CronZeitpläne mit expliziter Zeitzone
08:00
SyncCronA
Planen · Auslösen · Status erfassen
Anwendungen.NET-HandlerMVP 0.1.0
HostsSkripte · ContainerGeplant
Cloud-DiensteAPIs · FunctionsGeplant
Cloud · Hybrid · On-PremEin Steuerungsmodell
Die Ausführung bleibt im Zielsystem. SyncCronA übernimmt die zentrale Zeitsteuerung und erfasst verfügbare Rückmeldungen.
ZeitplanSyncCronAAktionErgebnis
Zentrale ZeitplanungAnwendungen · Hosts · CloudBusinesslogik bleibt am ZielStatus & Historie
Praktisch erklärt

Ein Zeitplan. Ein klarer Ablauf.

Stell dir einen Abrechnungsdienst vor, der jeden Morgen Rechnungen erzeugen soll. Du legst fest, was er ausführen kann und wann es passieren soll. SyncCronA startet den registrierten Handler zum geplanten Zeitpunkt und hält den Lauf fest.

01 / Einsatz

Für Aufgaben mit zentralem Überblick

Wenn wiederkehrende Aufgaben über mehrere Anwendungen oder Instanzen verteilt sind und du Zeitpläne, Fehler und Ergebnisse zentral nachvollziehen willst. Besonders hilfreich wird das beim Skalieren: Ein Dienst läuft mehrfach, die Aufgabe soll aber nur gezielt angestoßen werden.

02 / Einbindung

Direkt in deine Anwendung eingebunden

Für den ersten Integrationsweg registrierst du den SyncCronA Application Agent in deinem .NET-Dienst und benennst einen vorhandenen Handler. Du konfigurierst die Verbindung zur zentralen Instanz und legst dort den Zeitplan fest. Der Handler bleibt in deiner Anwendung.

03 / Technologie

.NET ist der Anfang

Der MVP 0.1.0 konzentriert sich auf den .NET Application Agent. Das Gesamtkonzept ist technologieoffen: Host Agent und Connectoren sollen später Skripte, Container, APIs, Messaging und Cloud Functions einbinden. Diese Wege sind noch nicht Teil des MVP.

Konkreter Ablauf im MVP

„Rechnungen jeden Morgen um 08:00 erstellen“

Dein Dienst registriert den Handler GenerateInvoices. SyncCronA verwaltet einen Zeitplan mit Zeitzone. Zur geplanten Zeit erzeugt es eine Execution und wählt eine geeignete, erreichbare Instanz des Dienstes. Die Anwendung führt ihren Handler aus und meldet den Status zurück.

08:00 · ZeitplanSyncCronA · ExecutionGenerateInvoices · HandlerErgebnis · Historie

SyncCronA befindet sich im Aufbau. Die Seite beschreibt den dokumentierten MVP und die weitere Produktvision; sie ist noch keine Installationsanleitung für einen verfügbaren Dienst.

01 / Die Herausforderung

Viele Systeme.
Zu viele einzelne Zeitpläne.

Cronjobs auf Servern, Timer in Cloud Functions und Scheduler in Anwendungen: Wiederkehrende Aufgaben verteilen sich über die gesamte Infrastruktur. SyncCronA soll ihre Zeitsteuerung an einem Ort zusammenführen.

01

Zeitpläne sind verstreut

Wartungsskripte, Datenabgleiche und Batch-Jobs werden in unterschiedlichen Werkzeugen geplant. Änderungen und Zuständigkeiten bleiben unübersichtlich.

02

Jedes System plant anders

Cron, Intervalle, Zeitzonen und Sommerzeit werden immer wieder separat gelöst — vom einzelnen Host bis zum Cloud-Dienst.

03

Der gemeinsame Überblick fehlt

Was sollte laufen, welches Ziel wurde erreicht und welches Ergebnis kam zurück? Ohne zentrale Historie fehlen die Verbindungen.

Das Zielbild · Ausbau über MVP 0.1.0 hinaus

Zeitsteuerung über Systemgrenzen.

SyncCronA soll zeitgesteuerte Aufgaben dort starten, wo sie gebraucht werden: in Anwendungen, auf Hosts und über Cloud-Services. Agents und Connectoren verbinden diese Ziele mit der zentralen Planung.

APIs & Endpoints

HTTP-Aufrufe und interne Dienste zeitgesteuert anstoßen. Die Businesslogik bleibt am Ziel.

REST APIs · Webhooks

Messaging

Nachrichten an Queues und Topics übergeben, um nachgelagerte Verarbeitung zu starten.

Service Bus · RabbitMQ · Kafka · MQTT

Serverless

Functions über passende Connectoren auslösen, ohne die Zeitsteuerung in jeder Function separat zu pflegen.

Azure Functions · AWS Lambda · GCP Functions

Runner & Host Agent

Ein Host Agent soll lokale Skripte, Binaries, Container und Kubernetes-Workloads starten — auch in getrennten Netzwerken über eine ausgehende, abgesicherte Verbindung.

Docker · Kubernetes · Bash · PowerShell

So könnten geplante Integrationen aussehen

03:00 UhrJede Nacht
SyncCronA
Service Bus → Azure FunctionNächtliche Batch-Verarbeitung anstoßen
Alle 5 MinutenIntervall
SyncCronA
API-Call an internes ERPRegelmäßige Datensynchronisation starten
Montags, 09:30Wöchentlicher Zeitplan
SyncCronA
Kafka-Nachricht für ReportsWöchentliche Berichtserstellung anfordern

Diese Beispiele beschreiben geplante Integrationen. Die erfolgreiche Zustellung eines Auftrags bestätigt noch nicht seine fachliche Ausführung; dafür ist eine Rückmeldung des Zielsystems erforderlich.

Der erste Schritt · MVP 0.1.0

Wir beginnen bei Anwendungen.
Die Vision reicht weiter.

Version 0.1.0 konzentriert sich auf verteilte .NET-Anwendungen: registrierte Handler, zentrale Schedules und die Auswahl einer gesunden Instanz. Dieser erste Anwendungsfall legt die Grundlage für die allgemeine Zeitsteuerung über Hosts und Cloud-Dienste.

MVP 0.1.0 / So beginnt es

Ein Zeitplan.
Eine geeignete Instanz.

Scheduling und Ausführung sind getrennt. Ein Zeitplan beschreibt die Regeln. Eine Execution steht für einen konkreten Lauf — mit eigener Identität und eigenem Status.

// Aus der aktuellen Application-Agent-Dokumentation builder.Services.AddSyncCronA(builder.Configuration) .AddHandler<CleanupHandler>("cleanup");

Die Konfiguration benötigt eine HTTPS-Adresse der Control Plane, eine ApplicationId und ein BootstrapSecret. Die Handler bleiben in deiner Anwendung; SyncCronA überträgt keinen beliebigen Code.

01

Registrieren

Der Application Agent meldet Anwendung, Instanzen und verfügbare Handler. Heartbeats zeigen die Erreichbarkeit.

02

Planen

Ein Zeitpunkt, Intervall, Cron-Schedule oder manueller Aufruf erzeugt eine eindeutige Execution.

03

Gezielt ausführen

AnyHealthyInstance wählt eine geeignete, gesunde Instanz aus und fordert den registrierten Handler an.

04

Ergebnis nachvollziehen

Started, Running, Success oder Failed werden zentral zurückgemeldet und mit Dauer und Fehlerdetails gespeichert.

Werkzeugwahl

Ein Job. Vier gute Wege.

Hangfire, Quartz.NET und Kubernetes CronJobs lösen reale Scheduling-Probleme. SyncCronA wird interessant, wenn Zeitpläne, Zielauswahl und Ausführungshistorie über laufende Anwendungsinstanzen hinweg an einem Ort liegen sollen. Für einen einzelnen Dienst oder einen reinen Containerjob ist ein etabliertes Werkzeug oft der kürzere Weg.

Hangfire

Background Jobs in .NET

Passt, wenn Jobs und Worker in deiner .NET-Landschaft bleiben und du Queue, wiederkehrende Jobs und Verarbeitung mit persistentem Storage zusammen betreiben willst.

Stark für: .NET-Jobverarbeitung
Quartz.NET

Präzise Trigger

Passt, wenn deine Anwendung umfangreiche Trigger und Zeitregeln benötigt. Mit persistentem Job Store unterstützt Quartz.NET auch Scheduler-Clustering.

Stark für: Scheduling im .NET-System
Kubernetes CronJob

Jobs im Cluster

Passt, wenn die Aufgabe als eigener Kubernetes Job und Pod laufen soll und ihre Planung im Cluster bleiben kann.

Stark für: containerisierte Batch-Jobs
Die eigentliche Entscheidung: Mehrere Worker oder Scheduler können auch Hangfire und Quartz.NET betreiben. SyncCronA setzt beim Integrationspunkt an: ein vorhandener Handler in einer laufenden Anwendungsinstanz, zentral ausgewählt und über eine eigene Execution nachvollzogen. Für reine .NET-Jobs oder Kubernetes-Batch-Jobs bleiben die etablierten Werkzeuge oft einfacher; SyncCronA bringt eine zusätzliche Control Plane mit.
Architektur / MVP-Pfad

Vom Takt zum Handler.

SyncCronA trennt die Entscheidung wann und wo von der Fachlogik was. Im dokumentierten MVP bleibt die Logik in deiner .NET-Anwendung; die zentrale Control Plane verwaltet den Zeitplan, den einzelnen Lauf und seinen Status.

01 / RegelZeitplanCron, Intervall oder Zeitpunkt wird zentral verwaltet.
02 / IdentitätExecutionDer Core erzeugt einen Lauf mit eigener ID und speichert ihn in PostgreSQL.
03 / AuswahlGeeignete InstanzRegistrierte Handler, Verbindung und Heartbeat begrenzen die Auswahl.
04 / Arbeit.NET-HandlerEin bereits vorhandener Handler führt die Fachlogik in der Anwendung aus.
05 / RückwegStatus & HistorieStart, Verlauf und Ergebnis werden über die Execution-ID zugeordnet.

Die Verbindung geht vom Agenten aus

Der Application Agent meldet Handler und Heartbeats und hält einen mit Client-Zertifikat gesicherten gRPC-Stream über HTTPS zur Control Plane. Über denselben Kommunikationspfad kommen Aufträge und Statusmeldungen zurück.

Die heutige Grenze ist klar

Der dokumentierte Ausbau nutzt einen einzelnen Core; offene Agent-Verbindungen liegen in dessen Prozessspeicher. Host Agent, Cloud-Connectoren und ein hochverfügbarer Core sind noch keine zugesicherten Funktionen des MVP.

Ausführung unter Last und bei Ausfällen

Eine ID für den Lauf.
Keine magische Exactly-once-Garantie.

Bei mehreren Anwendungsinstanzen soll ein geplanter Termin eine eindeutige Execution erzeugen und eine geeignete Instanz auswählen. Das schützt die Planung vor Doppelungen. Ob die fachliche Arbeit bei jedem denkbaren Ausfall exakt einmal geschieht, ist eine andere Frage.

01 · PLANUNG

Ein Termin, ein Datensatz

Für geplante Läufe ist die Kombination aus Schedule und geplantem Zeitpunkt eindeutig. Jede Execution trägt eine eigene ID, über die Status und Logs zusammengehören.

02 · VERBINDUNG

Status nach Reconnect

Ein Handler läuft bei einem Verbindungsabbruch weiter. Der Agent liefert unbestätigte Statusmeldungen nach dem Reconnect nach und unterdrückt denselben Auftrag innerhalb seines laufenden Prozesses.

03 · AUSFALL

Unklar bleibt unklar

Nach einem Agent-Prozessabsturz können Meldungen und Duplikaterkennung verloren sein. Eine bereits zugeordnete Execution wird bei unklarem Versand nicht automatisch neu verteilt und kann ohne Endergebnis bleiben.

Für kritische Jobs

Nutze die Execution-ID zur Idempotenz in deiner Fachlogik und plane den Umgang mit unklaren oder fehlgeschlagenen Läufen ein. Automatische Retries, dauerhafte Outbox und Timeout-Reconciliation sind als spätere Schritte beschrieben; für 0.1.0 wird keine Exactly-once-Ausführung versprochen.

MVP 0.1.0 / Geplanter Umfang

Der erste vollständige Weg
vom Zeitplan zum Ergebnis.

Der MVP beweist diesen Weg zunächst mit .NET-Handlern. Die Auswahl einer Instanz löst dabei das konkrete Problem mehrfach gestarteter Aufgaben in autoskalierenden Anwendungen.

EXECUTION CONTROLKonzeptbeispiel
GenerateInvoicesTäglich · Europe/Berlin
08:00
SyncCronA
Eine Execution · AnyHealthyInstance
Instanz 01Bereit
Instanz 02Ausgewählt
Instanz 03Bereit
Execution #4711✓ Success · 1.2 s
Ein zentraler Start. Ein ausgewählter Handler. Ein nachvollziehbares Ergebnis.

Flexible Zeitpläne

Absolute Zeitpunkte, Intervalle und Cron-Schedules mit expliziter Behandlung von Zeitzonen und Sommerzeit.

Instanzen im Blick

Self-Registration und Heartbeats schaffen die Grundlage für die Auswahl einer gesunden Anwendungsinstanz.

Eine Identität pro Lauf

Die ExecutionId verbindet Start, Statusmeldungen und Ergebnis. Schedule-Konfiguration und Ausführungshistorie bleiben getrennt.

Zentrale Historie

Status, Dauer und Fehlerdetails machen Ausführungen nachvollziehbar. Strukturierte Logs lassen sich einer Execution zuordnen.

Ausgehend verbunden

Der .NET Application Agent verbindet sich mit SyncCronA. Registrierte Handler führen die Businesslogik innerhalb der Anwendung aus.

Kontrollierte Auslösung

Authentifizierung für Benutzer und Agents sowie grundlegender Schutz gegen doppelte Schedule-Auslösung gehören zum MVP-Scope.

Ein klarer Rahmen: eindeutige Execution-IDs, Duplicate Prevention und idempotente Verarbeitung — keine pauschale Exactly-once-Garantie.
MVP 0.1.0 / Anwendungsfälle

Für Aufgaben, die verlässlich
ihren Platz im Tag brauchen.

Beispielhafte Handler für Entwickler- und Plattformteams mit verteilten .NET-Anwendungen.

Billing
08:00

Rechnungen erzeugen

Der BillingService läuft auf mehreren Instanzen. Eine geeignete Instanz erhält die Execution für den Tageslauf.


GenerateInvoices
Maintenance
03:00

Aufräumen nach Plan

Ein registrierter Cleanup-Handler verarbeitet nächtliche Wartungsaufgaben. Status und Laufzeit bleiben nachvollziehbar.


CleanupHandler
Manueller Start
Jetzt

Gezielt nachstarten

Ein manueller Aufruf erzeugt ebenfalls eine Execution — mit derselben Instanzauswahl und Ergebnisrückmeldung.


Execute now
Für wen ist SyncCronA?

Für Teams, die Zeitsteuerung
gemeinsam denken.

Ein gemeinsamer Blick auf wiederkehrende Aufgaben — in Anwendungen, auf Servern und über Cloud-Dienste hinweg.

Entwickler & DevOps

Wiederkehrende Aufgaben zentral planen, statt Cron-Konfiguration und Zeitlogik in jedem Dienst oder Skript erneut zu pflegen.

Cloud- & Infrastrukturteams

Perspektivisch Functions, APIs, Container und Host-Aufgaben über dieselbe Zeitsteuerung ansprechen — auch in hybriden Umgebungen.

Plattformteams

Zeitpläne, Ausführungsstatus und Historie an einem Ort zusammenführen, statt sie über einzelne Systeme zu verteilen.

Teams mit Batch-Prozessen

Rechnungen, Bereinigungen und regelmäßige Verarbeitung planbar machen und ihren Verlauf nachvollziehen.

05 / Fokus & Vision

Ein belastbarer Kern.
Eine größere Perspektive.

Die Projektdokumentation beschreibt einen fokussierten Einstieg. Weitere Ausführungsziele folgen dem langfristigen Konzept und sind keine Zusage für Version 0.1.0.

MVP-Scope · 0.1.0

Verteilte .NET-Anwendungen

Der vollständige Kernfluss vom registrierten Handler bis zur zentralen Ausführungshistorie.

  • Application Agent und Handler-Registrierung
  • Cron, Intervalle und absolute Schedules
  • AnyHealthyInstance und Execute now
  • Execution-Lifecycle und Ergebnisrückmeldung
  • Minimale UI für Anwendungen, Schedules und Läufe
Langfristiges Konzept

Mehr Ziele. Ein Steuerungsmodell.

Agents und Connectoren sollen die zentrale Steuerung über weitere Laufzeitumgebungen hinweg ermöglichen.

  • Host Agent für getrennte Netzwerke
  • Docker, Kubernetes, Skripte und Binaries
  • APIs, Serverless und Message Broker
  • Weitere Routing-Strategien und Labels
  • Erweiterte Retry- und Lease-Policies
06 / Gut zu wissen

Die wichtigen Unterschiede.

Wie läuft eine geplante Aufgabe ab?

Du registrierst einen ausführbaren Handler in deiner Anwendung und verwaltest seinen Zeitplan zentral. Wenn der Zeitpunkt erreicht ist, erzeugt SyncCronA eine Execution, wählt ein geeignetes Ziel aus und erfasst den gemeldeten Status. Ein Beispiel ist der tägliche Rechnungslauf.

Wie erfolgt die Integration in eine Anwendung?

Der erste Integrationsweg ist der .NET Application Agent: Im Dienst registrierst du den Agent und einen benannten Handler. Zusätzlich konfigurierst du die Verbindung zur Control Plane. Für Host- und Cloud-Ziele sind eigene Anbindungen geplant.

Welche Laufzeitumgebungen werden unterstützt?

Für den MVP 0.1.0 ist .NET der erste unterstützte Anwendungsweg. Die Plattformvision umfasst auch Hosts, APIs, Container und Cloud-Dienste; die entsprechenden Runner und Connectoren sind noch geplant.

Für welche Aufgaben eignet sich SyncCronA?

Wenn mehrere wiederkehrende Aufgaben oder Dienste eine zentrale Planung und nachvollziehbare Ausführungen brauchen. Ein konkreter Fall sind autoskalierende Anwendungen: Der Dienst läuft mehrfach, eine geplante Aufgabe soll aber gezielt auf einer geeigneten Instanz gestartet werden.

Welche Systeme soll SyncCronA künftig erreichen?

SyncCronA ist als zentrale Zeitsteuerung für Anwendungen, Hosts und Cloud-Dienste konzipiert. Die Instanzauswahl ist der erste konkrete Anwendungsfall im MVP 0.1.0. Host Agent, Runner und Cloud-Connectoren sind geplante Erweiterungen desselben Modells.

Wie grenzt sich SyncCronA von einer Workflow-Engine ab?

Der Produktkern ist Trigger → Execution → Target → Result. Komplexe Prozessgraphen mit Verzweigungen und Abhängigkeiten gehören nicht zum MVP. Die fachliche Prozesslogik bleibt in den Zielanwendungen.

Wie werden doppelte Ausführungen behandelt?

Das Konzept setzt auf eine eindeutige ExecutionId, Schutz gegen doppelte Auslösung und idempotente Verarbeitung. Eine allgemeine Exactly-once-Garantie in verteilten Systemen wird für 0.1.0 ausdrücklich nicht gegeben.

Wie wird der Erfolg einer Ausführung festgestellt?

Für zukünftige Broker- und Connector-Ziele muss zwischen Zustellung und fachlichem Erfolg unterschieden werden. Für Ende-zu-Ende-Transparenz benötigt das Ziel ein Rückmeldeprotokoll mit ExecutionId.

Was ist bereits umgesetzt, was ist noch geplant?

SyncCronA befindet sich im Aufbau. Diese Seite beschreibt den dokumentierten MVP-Scope und das langfristige Konzept, keinen verifizierten Release-Stand. Für den aktuellen Entwicklungsstand und einen Austausch nutze bitte den Kontakt.

Lass uns über deinen Anwendungsfall sprechen

Deine Systeme.
Eine gemeinsame Zeitsteuerung.

Ob Wartung auf einem Host, regelmäßige API-Aufrufe, Cloud-Jobs oder Aufgaben in deiner Anwendung: Teile deinen Anwendungsfall und gestalte die nächsten Schritte von SyncCronA mit.

Kontakt aufnehmen