Aller au contenu principal

Premières opérations

Cet article couvre les trois opérations clé-valeur que vous utilisez le plus avec Clustron Zaris : stocker une valeur, la relire et la supprimer. Ensemble, elles suivent un simple motif put, get, delete.

La même API fonctionne à la fois en mode in-process et en mode distribué, de sorte que le code présenté ici s'exécute sans changement quel que soit le mode utilisé par votre store.

Prérequis​

Vous avez besoin d'un store en cours d'exécution et d'un client connecté. Si vous n'en avez pas encore, obtenez un client dans Exécuter in-process ou Créer votre premier store. Les exemples ci-dessous supposent une variable client issue de ces étapes.

Mettre (put) une valeur​

Stockez une valeur pour une clé avec PutAsync. Si la clé existe déjà, sa valeur est écrasée.

await client.PutAsync("hello", "world");

Obtenir (get) une valeur​

Lisez une valeur avec GetAsync, en passant le type que vous attendez. L'appel renvoie un résultat dont la propriété IsSuccess vous indique si la clé a été trouvée, et dont la propriété Value contient la valeur lorsqu'elle l'a été.

var result = await client.GetAsync<string>("hello");

if (result.IsSuccess)
{
Console.WriteLine(result.Value);
}
else
{
Console.WriteLine("Key not found");
}

Supprimer (delete) une valeur​

Supprimez une clé et sa valeur avec DeleteAsync.

await client.DeleteAsync("hello");

Gérer les résultats​

La plupart des opérations renvoient un KvResult. Vérifiez sa propriété IsSuccess pour confirmer que l'opération a fonctionné, et lisez Error lorsque ce n'est pas le cas. Cela vous permet de gérer les échecs au lieu de supposer que chaque appel réussit.

var result = await client.PutAsync("key", "value");

if (!result.IsSuccess)
{
Console.WriteLine(result.Error);
}

À savoir​

Quelques règles s'appliquent à chaque opération :

  • Les clés sont des chaînes.
  • Les valeurs sont sérialisées automatiquement.
  • Toutes les opérations sont asynchrones, donc utilisez await.
  • La même API fonctionne à la fois en mode in-process et en mode distribué.

Étapes suivantes​

Pour des exemples complets et fonctionnels, voir le dépôt d'exemples de Zaris :

https://github.com/Clustron/zaris/tree/main/Samples