Die In-Memory-Datenplattform, die Ihr Team wirklich betreiben kann
Zaris ist eine In-Memory-Datenplattform für .NET — ein Redis-kompatibler Cache, indizierte Suche und Koordination in einer Engine, partitioniert und repliziert über Ihren Cluster. Sie ist messbar schneller als Redis auf Produktions-Nodes, durchsucht eine Million Datensätze in Millisekunden — schneller als eine festplattenbasierte Datenbank — und skaliert mit jedem Node, den Sie hinzufügen. Betten Sie sie für die Entwicklung ein und wechseln Sie dann zu einem Cluster, ohne eine Zeile Code zu ändern.
Alles, was eine In-Memory-Datenplattform braucht — nichts, was Sie nachrüsten müssen
Zaris liefert Datenebene und Steuerungsebene zusammen, sodass Sie Speicher, Koordination, Sicherheit und Tooling in einer Abhängigkeit erhalten.
Partitioniert & repliziert
Daten werden über Nodes verteilt (Sharding) und für die Verfügbarkeit repliziert, mit automatischer Platzierung und Rebalancing, wenn der Cluster wächst.
Indizierte Suche
SQL-artige Suche über Ihre In-Memory-Daten — exakte Treffer, Bereiche, kombinierte Filter, Präfix und geordnetes Top-N — bedient aus Indizes pro Node, ohne Festplatte im Abfragepfad. Eine Million Datensätze in Millisekunden durchsucht, schneller als eine festplattenbasierte Datenbank, und sie skaliert mit jedem hinzugefügten Node.
Spricht Redis, in jeder Sprache
Ein integriertes Front-End für das Redis-Protokoll (RESP) lässt gewöhnliche Redis-Clients — Python, Ruby, Java, Go und mehr — Zaris als Drop-in-Store nutzen, mit Load Balancer und Cluster-Failover.
Native Datenstrukturen
Serverseitige Hashes, Listen, Sets und Sorted Sets — die Entsprechungen der Redis-Typen — als erstklassige .NET-APIs und hinter den RESP-Befehlen HSET/LPUSH/SADD/ZADD.
Pub/Sub & Streams
Clusterweites Publish/Subscribe und dauerhafte Streams mit Consumer Groups und blockierenden Lesevorgängen — nativ und hinter den RESP-Befehlen SUBSCRIBE/PUBLISH und X*.
Transaktionen & CAS
Atomare Multi-Key-Transaktionen und Compare-and-Swap halten gleichzeitige Updates auch unter Last korrekt.
Watches, Leases & Locks
Streamen Sie Änderungen in Echtzeit, koordinieren Sie Arbeit mit Leases und verteilten Locks und wählen Sie Leader.
Counter & TTL
Atomare Counter mit Grenzen sowie Time-to-Live-Ablauf für Caches, Sessions und Rate-Fenster.
Integrierte Sicherheit
Mutual TLS mit vier CA-/Vertrauensmodellen, Token-Authentifizierung und RBAC nach dem Deny-by-Default-Prinzip — pro Store aktivierbar.
Konsole & PowerShell
Eine Web-Konsole und vollständiges PowerShell-Tooling zum Erstellen, Skalieren, Absichern und Beobachten jedes Stores.
In-Process für die Entwicklung. Geclustert für die Produktion.
Ein Key gehört einer Partition und wird auf Follower repliziert. Clients werden automatisch zum Owner geleitet, sodass Lese- und Schreibvorgänge konsistent bleiben, während der Cluster den Ausfall von Nodes toleriert.
- Eingebettet ohne Server betreiben — ideal für lokale Entwicklung und Tests.
- Mit demselben Client-Code auf einen Multi-Node-Cluster wechseln.
- Automatische Partitionszuordnung und Replikatplatzierung.
- Der Ausfall von Nodes wird bis zu Ihrem Replikationsfaktor toleriert.
See your whole cluster at a glance
Jeder Zaris-Cluster wird mit einer integrierten Web-Konsole geliefert — Echtzeit-Durchsatz, Partitionszuordnung, Node-Zustand, Live-Daten und Sicherheit.
Vom Caching bis zur Koordination
Teams greifen zu Zaris, sobald gemeinsamer Zustand oder Koordination auf dem kritischen Pfad liegen.
Eine langsame App beschleunigen
Cachen Sie aufwendige Abfragen, API-Antworten und gerenderte Fragmente In-Process mit nahezu null Latenz — und teilen Sie den Cache zwischen Instanzen, wenn Sie horizontal skalieren.
Verteilter Session-Store
Halten Sie Benutzersitzungen über jede Instanz hinter Ihrem Load Balancer konsistent, mit automatisch verwaltetem TTL-Ablauf.
Koordination & Leader-Election
Betreiben Sie Singletons sicher, schützen Sie kritische Abschnitte mit verteilten Locks und wählen Sie einen Leader für Scheduling und Orchestrierung.
Live-Updates mit Watches
Reagieren Sie auf Datenänderungen, sobald sie passieren — Konfigurations-Reloads, Presence, Dashboards und Event-Fan-out.
Rate Limiting & Quotas
Setzen Sie feste und gleitende Fenster mit atomaren Countern clusterweit durch, ohne separaten Service.
Job- & Task-Queues
Koordinieren Sie Producer und konkurrierende Worker mit Leases und atomaren Claims auf gemeinsamem Zustand.
Ein verteilter Cache in wenigen Zeilen
Registrieren Sie einen Store per Dependency Injection, dann Put und Get. Starten Sie In-Process; richten Sie denselben Code auf einen Cluster, wenn Sie bereit sind.
Read the docs// In-process is just a connection string: zaris://inproc/orders
var services = new ServiceCollection()
.AddClustronZaris("orders", "zaris://inproc/orders")
.BuildServiceProvider();
var client = await services
.GetRequiredService<IZarisClientProvider>()
.GetAsync("orders");
// Cache an expensive computation for 5 minutes
await client.PutAsync("cart:42", cart, Put.WithTtl(TimeSpan.FromMinutes(5)));
var cached = await client.GetAsync<Cart>("cart:42");
Ready to build with Zaris?
Get started in minutes, or talk to us about your architecture.
