Aller au contenu principal

Questions fréquentes

Réponses courtes aux questions que les gens posent lorsqu'ils évaluent Clustron pour la première fois. Chacune renvoie à la documentation plus complète.

Qu'est-ce que Clustron ?​

Clustron est une famille de briques .NET composables pour systèmes distribués — clustering, autorisation, métriques et un store clé-valeur distribué. Chaque brique est un package NuGet que vous embarquez dans votre propre application, sans coordinateur externe (ZooKeeper, etcd ou Consul) à exécuter. Le produit phare, Zaris, est ce que vous obtenez lorsque les trois primitives sont composées en un seul store clé-valeur distribué. Voir Qu'est-ce que Clustron ?.

Ai-je besoin de Redis, et comment Clustron se compare-t-il ?​

Non — Clustron Zaris est une alternative à Redis pour les systèmes .NET, pas une couche par-dessus. Redis est un serveur mature et agnostique du langage que vous exploitez comme une infrastructure distincte ; Zaris est une bibliothèque .NET embarquable que vous pouvez exécuter in-process ou comme cluster distant, avec des primitives de coordination exposées sous forme d'API .NET natives. Choisissez Redis pour la portée linguistique et un long historique en production ; choisissez Zaris lorsque vos services sont en .NET et que vous appréciez le développement in-process et la coordination native. Voir Clustron vs Redis.

Quand utiliser le mode in-process plutôt que le mode distribué ?​

Utilisez le mode in-process lorsque vous ne voulez aucune infrastructure — développement local, tests unitaires et d'intégration, applications à instance unique — puisque le store s'exécute à l'intérieur de votre propre processus et constitue le moyen le plus rapide de démarrer. Utilisez le mode distribué lorsqu'un seul processus ne suffit pas : haute disponibilité, partage d'état entre plusieurs instances, ou mise à l'échelle au-delà d'une seule machine. L'API est identique dans les deux cas, de sorte que vous développez en in-process et déployez en distribué sans modifier le code applicatif. Voir Modes in-process et distribué.

Les verrous et les baux sont-ils fiables ?​

Oui — ils sont conçus pour être sûrs en cas de défaillance, ce qui est la partie difficile. Un bail est une possession limitée dans le temps qui expire automatiquement si son détenteur tombe en panne ou perd le réseau, et les verrous Zaris s'appuient sur des baux, de sorte qu'un détenteur mort ne peut pas provoquer un interblocage pour tous les autres. Une réserve : sous la réplication Async par défaut, un basculement peut perdre des écritures qui n'avaient pas encore été répliquées, donc utilisez la réplication Sync lorsqu'un basculement ne doit pas perdre d'écritures récentes. Voir Baux et le modèle de coordination.

Quelles versions de .NET sont prises en charge ?​

Les abstractions clientes de base ciblent netstandard2.0, de sorte que les clients légers fonctionnent aussi bien sur .NET Framework 4.8 que sur .NET 8+. Exécuter un store in-process requiert .NET 8 ou ultérieur, et les adaptateurs plus riches — comme l'intégration ASP.NET Core — ciblent net8.0. Voir Exécuter in-process et les principes de conception dans Qu'est-ce que Clustron ?.

Est-ce sécurisé ? Est-ce que cela prend en charge TLS ?​

Oui. Zaris sécurise un cluster avec trois couches indépendantes que vous activez séparément : chiffrement TLS en transit (à la fois sur le plan de données et le plan de contrôle), authentification par token vérifiée hors ligne, et contrôle d'accès basé sur les rôles (RBAC), qui refuse par défaut. Un cluster de développement peut fonctionner en clair avec les trois désactivées, et un cluster de production exécute généralement les trois activées. Voir la présentation de la sécurité.

Puis-je l'exécuter sur Kubernetes ?​

Oui. Il existe un chart Helm officiel qui exécute les nœuds sous forme de StatefulSet avec un Service headless dans le modèle de déploiement attach : Kubernetes exécute les processus des nœuds tandis que le manager Zaris les observe et sert le plan de contrôle et la console web. Les pairs sont découverts à partir des ordinaux de pod et du DNS, de sorte que le scale-out est un simple kubectl scale à chaud — pas d'édition de ConfigMap ni de redémarrage des pods existants. Les mises à jour progressives sont sûres — chaque nœud expose des sondes /livez et /readyz conditionnées par la convergence, de sorte que Kubernetes cesse de router vers un pod avant qu'il ne se vide, et un PodDisruptionBudget borne les perturbations volontaires. Les clients hors cluster sont pris en charge via un listener externe avec des adresses annoncées, et TLS avec des certificats multi-SAN le sécurisent. Tout cela a été validé sur un cluster en production.

La principale réserve est que le scale-in n'est pas encore sûr vis-à-vis du drain — réduisez d'un pas à la fois et laissez la réplication rétablir le facteur de réplication entre chaque pas. Voir le guide de déploiement Kubernetes — y compris la mise à l'échelle — et la présentation du déploiement.

Quelle est la différence entre un serveur, un nœud et un store ?​

Un serveur est une machine qui exécute Zaris, identifiée par son adresse de gestion (host:7801). Un nœud est un unique processus de store qu'un serveur exécute — un par emplacement partition-réplica — et un serveur exécute généralement plusieurs nœuds. Un store est l'unité de données logique que ces nœuds présentent aux clients. Un serveur peut héberger des nœuds pour plusieurs stores, et les nœuds d'un même store peuvent s'étendre sur plusieurs serveurs. Voir Serveur, Nœud et Store, ou le Glossaire.

Zaris est-il gratuit ? Ai-je besoin d'une licence pour la production ?​

Zaris est gratuit à télécharger et à utiliser pour développer — le SDK client, le mode in-process, l'ensemble du plan de données et les primitives de coordination, ainsi que l'administration PowerShell — et chaque déploiement inclut trois mois de support. Exécuter Zaris en production est soumis à licence, et le support continu (SLA, accès direct) après les trois mois inclus nécessite un plan de support. En pratique, la seule chose qui change lorsque la période de support se termine est que la console web se verrouille sur un écran de licence ; le plan de données, la réplication, le basculement et l'administration PowerShell continuent de fonctionner, de sorte qu'un cluster de production continue de servir. Définissez ZARIS_SUPPORT_KEY (délivré avec une licence) pour réactiver la console, ou ZARIS_SUPPORT_ACK_NONPROD=true pour le développement. Voir Support et licences et Plans de support.