L · Avis de leader
Ce n'est pas la réponse à une requête, mais un avis que le serveur envoie de lui-même (cluster uniquement). Lorsqu'il détecte que le leader Raft a changé, le nœud envoie une fois l'adresse client du nouveau leader à tous les clients qui lui sont connectés.
En quoi cela diffère de M
M · Redirigé | L · Avis de leader | |
|---|---|---|
| Nature | Réponse à une requête | Avis émis par le serveur (sans lien avec une requête) |
| Signification | « cette requête ne peut pas être traitée ici » | « le leader a changé » (information) |
| Connexion | Fermer et se reconnecter au nouveau leader | Maintenue — seul l'indice est mis à jour |
| Ce nœud | N'est certainement pas le leader | Peut justement être le nouveau leader |
Ne fermez pas la connexion à la réception d'un L. Il est fréquent que le nœud qui a envoyé l'avis soit précisément le nouveau leader, et des requêtes doivent encore transiter par cette connexion.
Pourquoi c'est nécessaire
Sans cet avis, le client n'apprend le changement de leader qu'en envoyant une requête et en se faisant renvoyer un M. L supprime cet aller-retour : la première requête après le basculement part déjà directement vers le nouveau leader.
Tous les clients officiels du premier protocole formel comprennent L. Il est interdit d'ignorer un op inconnu puis de continuer à utiliser le stream.
Notation des octets :
opest un caractère ASCII, etaddrest du texte UTF-8 (longueur variable, notéeNdans la structure). Le\nfinal est0A.
Flux
En mode serveur unique, la notion de leader n'existe pas : cet avis n'est donc pas envoyé. Pour le comportement complet du cluster, voir Protocole (Cluster).