Zum Hauptinhalt springen
Verteiltes Caching

Ein verteilter Cache für .NET — ohne Redis

Clustron Zaris ist ein verteilter In-Memory-Store für .NET mit Drop-in-Caching für ASP.NET Core. Derselbe Client läuft In-Process für die Entwicklung und geclustert für die Produktion — partitioniert und repliziert (RF2), hochverfügbar und selbst gehostet.

Drop-in-Caching

Cachen, wie ASP.NET Core es ohnehin tut

IDistributedCache

Zaris implementiert das Interface, über das ASP.NET Core ohnehin cacht — registrieren Sie es in zwei Zeilen in Program.cs, und Ihr Caching-Code bleibt unverändert, nur das, was dahintersteht, ändert sich.

HybridCache

Ein In-Process-L1 über dem verteilten L2, mit Tag-Invalidierung und Stampede-Schutz — die Geschwindigkeit des lokalen Speichers mit der Konsistenz eines gemeinsamen Stores.

Ein nativer .NET-Client

Über die Cache-Interfaces hinaus ein asynchroner .NET-Client mit dem vollen Store — dieselbe API In-Process und gegen einen Cluster.

Nicht nur eine Cache-Schicht

Standardmäßig hochverfügbar

Partitioniert & repliziert

Daten werden über Nodes verteilt (Sharding) und mit RF2 repliziert — ein Primary und ein Replikat auf verschiedenen Nodes —, sodass die Kapazität mit jedem Node wächst und der Verlust eines Nodes verkraftbar ist.

Live-Failover ohne Datenverlust

Beenden Sie einen Node mitten im Datenverkehr, und seine Replikate werden sofort hochgestuft — Clients stoppen nie, und es gehen keine bestätigten Schreibvorgänge verloren.

Elastische Skalierung

Fügen Sie Nodes hinzu, während der Cluster arbeitet — Zaris erzeugt die Partitionskarte neu und migriert Daten automatisch, ohne Downtime.

Ein Store, viele Aufgaben

Mehr als ein Cache

Native Datenstrukturen & TTL

Hashes, Listen, Sets und Sorted Sets als serverseitige Typen, plus Time-to-Live pro Key, sodass gecachte Einträge von selbst auslaufen.

Pub/Sub & Streams

Clusterweites Publish/Subscribe und ein dauerhaftes, repliziertes Event-Log mit Consumer Groups — Koordination, für die man sonst ein zweites System braucht.

Koordinationsprimitive

Verteilte Locks, Transaktionen, Watches, atomare Counter und Leases — nutzen Sie einen Store für gecachte Daten und die Logik drumherum.

Von In-Process zum Cluster

Von der Entwicklung bis zur Produktion, derselbe Code

Eingebettet für die Entwicklung

Betreiben Sie den Store In-Process — kein separater Server, keine Infrastruktur — ideal für lokale Entwicklung und Tests.

Geclustert für die Produktion

Richten Sie denselben Client-Code auf einen echten Remote-Cluster — der Wechsel ist eine Konfigurationsänderung, kein Neuschreiben.

Ein Connection String

Ein plattformunabhängiger Connection String erreicht jedes Deployment — In-Process, Docker, Kubernetes oder Windows — mit automatischem Failover.

Cachen ohne separaten Server

Installieren Sie Zaris, fügen Sie zwei Zeilen zu Program.cs hinzu und cachen Sie, wie ASP.NET Core es ohnehin tut.