Locks, leases, leader election, watches, rate limiting, and transactions — the primitives distributed systems need to avoid races, duplicate work, and split-brain. They run on the same store you already use for cache, with no separate ZooKeeper, etcd, or Consul to operate.
Mutual exclusion across your fleet — only one holder runs a critical section at a time, and the lock releases automatically when its owner dies.
Time-bound ownership of a key with expiry and renewal — the lifecycle the locks and elections are built on.
React to key and prefix changes the moment they happen — config reloads, presence, dashboards, event fan-out — with no polling loop.
Fixed and sliding windows enforced with atomic counters, cluster-wide, without standing up a separate service.
Run the same code as several instances and ordering and ownership stop being free. Instead of bolting on a separate coordination service, Zaris gives you the primitives that prevent races and split-brain on the store itself.
Cache, native data structures, and coordination live on the same store, reached by the same client and connection string.
No external coordinator such as ZooKeeper, etcd, or Consul to operate — the primitives ship inside the same .NET libraries as your data access.
Coordination state is replicated (RF2); a lock or lease survives a node loss and releases cleanly when its owner dies.
Install Zaris and reach for locks, leases, watches, and transactions on the store you already use.