Aller au contenu principal
Fonctionnalités

Tout ce que fait Clustron Zaris

Un store distribué en mémoire pour .NET — et bien plus qu'un cache. Chaque capacité ci-dessous renvoie vers une démo, sa documentation et un exemple exécutable. Le même client et la même chaîne de connexion atteignent l'ensemble.

Stockez n'importe quelle forme

Modèle de données et structures

Store clé/valeur

Le store clé/valeur distribué central avec un client .NET typé — put, get, delete, et les options que vous utilisez partout.

Hashes, listes, ensembles et ensembles triés

Collections façon Redis comme types de premier ordre, côté serveur — chacune une seule clé répliquée, via l'API typée ou les commandes RESP HSET/LPUSH/SADD/ZADD.

TTL et expiration

Durée de vie par clé pour les caches, les sessions et les fenêtres de limitation de débit — définissez, rafraîchissez, et laissez les clés expirer automatiquement.

Compteurs atomiques

Incrémentez et lisez une valeur partagée de façon atomique, avec des bornes optionnelles — classements, quotas et comptage.

Parle Redis

Compatibilité avec le protocole Redis

Front-end RESP, n'importe quel langage

Un listener en protocole Redis intégré permet aux clients Redis ordinaires — Python, Ruby, Java, Go, et plus — d'utiliser Zaris comme un store en remplacement direct.

Remplacement direct pour StackExchange.Redis

Pointez votre code Redis .NET existant vers un nœud Zaris — les mêmes appels, désormais sur un store partitionné et répliqué, sans réécriture.

Compatibilité des commandes

La surface de commandes RESP prise en charge sur les chaînes, hashes, listes, ensembles, ensembles triés, streams et pub/sub — et ce qui est proprement rejeté.

Routage direct et basculement

Des slots alignés sur CRC16 permettent aux clients compatibles cluster de router directement vers le nœud propriétaire — sans saut de proxy. Les modèles de basculement Load Balancer et Cluster sont pris en charge.

Des événements, pas seulement des données

Messagerie et streaming

Pub/Sub

Publication/abonnement à l'échelle du cluster — les messages sont diffusés aux abonnés sur n'importe quel nœud, avec des abonnements par motif — natif et derrière RESP SUBSCRIBE/PUBLISH.

Streams et groupes de consommateurs

Un journal append-only durable et répliqué avec groupes de consommateurs et lectures bloquantes — files de travail, change feeds, event sourcing — natif et derrière les commandes RESP X*.

Change Data Capture (CDC)

Un change feed de premier ordre, durable et ordonné de chaque Put et Delete dans l'espace de clés — capturé automatiquement. Diffusez les changements vers un index de recherche, un invalidateur de cache, une vue matérialisée ou un journal d'audit, et reprenez exactement là où vous vous êtes arrêté à partir d'un curseur suivi par le serveur.

Coordonnez votre flotte

Primitives de coordination

Transactions

Des transactions atomiques multi-clés avec détection optimiste des conflits gardent les mises à jour concurrentes correctes sous charge.

Compare-and-swap

Concurrence optimiste — mettez à jour une valeur uniquement si elle n'a pas changé, sans verrou requis.

Watches

Réagissez aux changements de clés et de préfixes en temps réel au lieu de faire du polling — rechargements de configuration, présence, tableaux de bord, fan-out.

Baux et verrous distribués

Possession de clés bornée dans le temps et verrous d'exclusion mutuelle avec expiration automatique — la base d'une coordination sûre.

Élection de leader

Élisez un leader unique entre instances à l'aide de baux et de watches ; un survivant prend le relais en cas de défaillance.

Limitation de débit

Appliquez des fenêtres fixes et glissantes avec des compteurs atomiques, à l'échelle du cluster, sans service séparé.

Sans Redis

Mise en cache pour .NET

IDistributedCache

Utilisez Zaris comme fournisseur IDistributedCache ASP.NET Core — votre code de mise en cache ne change pas, seulement ce qu'il y a derrière.

HybridCache

Un L1 in-process au-dessus du L2 distribué, avec invalidation par tag et protection contre les ruées — la vitesse avec la cohérence.

Store de session ASP.NET Core

Conservez l'état de session ASP.NET Core dans Zaris avec un seul appel AddZarisSession — n'importe quelle instance derrière un répartiteur de charge sert la requête suivante, et les sessions survivent aux redémarrages.

SessionState ASP.NET classique

Un SessionStateStoreProvider System.Web en remplacement direct pour Web Forms / MVC classique — déplacez l'état de session hors de la mémoire in-proc ou de SQL Server avec une modification du web.config.

Opérations en masse et par lots

PutMany/GetMany à haut débit et lots d'opérations mixtes qui regroupent de nombreuses clés en un seul aller-retour par propriétaire.

Survivre et évoluer

Distribution et disponibilité

Partitionnement et réplication

Les données sont réparties entre les nœuds et répliquées (RF2) avec placement automatique — un primaire et un réplica sur des nœuds différents.

Basculement en direct, sans perte de données

Arrêtez un nœud en plein trafic et ses réplicas sont promus instantanément — le client ne s'arrête jamais, et aucune écriture acquittée n'est perdue.

Mise à l'échelle élastique

Ajoutez des nœuds pendant que le cluster répond — Zaris régénère la carte des partitions et migre les données automatiquement, sans interruption de service.

Entre datacenters

Distribution mondiale

Géo-réplication WAN actif-actif

Exécutez des clusters Zaris indépendants dans deux régions ou plus et répliquez entre eux via un flux de changements reprenable. Chaque site accepte les écritures localement et sert des lectures à faible latence — ce n'est pas un cluster étiré, de sorte que chaque région survit à une perte totale du lien inter-sites et reprend depuis son curseur durable.

Résolution de conflits déterministe

Les écritures concurrentes sur différents sites convergent vers la même valeur grâce au last-writer-wins à horloge hybride logique, et les compteurs utilisent un PN-counter pour que les incréments concurrents ne soient jamais perdus — ainsi chaque région reste cohérente sans coordinateur central.

Topologie de réplication en direct et RPO

Des compteurs site.* automatiques dans les deux sens et un RPO rapporté comme l'ancienneté de la plus ancienne opération non appliquée — visualisés dans la console web sous forme de carte de réplication animée et en direct, avec une bannière d'état de santé.

Verrouillé par store

Sécurité

TLS mutuel

Chiffrez et authentifiez mutuellement chaque connexion, avec quatre modèles de CA/confiance, de l'auto-généré au bring-your-own-CA.

Authentification par token

Exigez un token pour se connecter, fourni en toute sécurité depuis une variable d'environnement ou un fichier — jamais dans la chaîne de connexion.

RBAC

Contrôle d'accès basé sur les rôles, refus par défaut — accordez exactement les opérations dont chaque identité a besoin, activé par store.

Exécutez-le à votre façon

Exploitation et outillage

Console web

Créez, mettez à l'échelle, sécurisez et observez chaque store depuis un navigateur — nœuds, partitions, appartenance et métriques en direct.

Modules PowerShell

Outillage en ligne de commande complet pour les espaces de travail, les stores, la mise à l'échelle, la sécurité et les diagnostics — scriptable de bout en bout.

Chaînes de connexion indépendantes de la plateforme

Une seule chaîne de connexion atteint chaque déploiement — hôtes d'amorçage séparés par des virgules avec basculement automatique, nom du store dans le chemin.

Déployez partout

En processus, Docker et Compose, Kubernetes (Helm) ou un package Windows — le même client et la même chaîne de connexion les atteignent tous.

Voyez-le fonctionner, puis exécutez-le vous-même

Regardez les démos, lisez la documentation ou installez Zaris et connectez-vous en quelques minutes.