Concept de base de kafka-ISR, explication détaillée
ISR-ISR détaillé
Il parle principalement des problèmes de synchronisation maître-esclave
Lorsque le P1 vert reçoit les données écrites, il doit être synchronisé avec les P1S1 et P1S2 violets.
Comment assurer la cohérence ?
L'utilisation de répliques synchronisées est le concept ISR
Pourquoi incohérent ?
Parce que les données de synchronisation P1S1 peuvent prendre 50 ms, P1S2 peut prendre 60 ms
Après synchronisation, entrez dans la collection ISR,
L'heure de synchronisation peut être réglée sur une heure spécifiée (temps de tolérance)
Entrez la collection OSR qui n'a pas été synchronisée dans le délai spécifié
La partie verte surveille principalement si la partie violette a un délai d'attente
Explication détaillée de l'ISR—HW–LEO
HW
: High Watermark, la limite supérieure, le consommateur ne peut extraire le message que jusqu'à la limite supérieure
LEO
: Log End Offset, le décalage (offset) du dernier enregistrement du fichier journal.
L'ensemble ISR est indissociable de l'existence directe de la relation HW et LEO
L'article entier (0-9) peut être vu commepartition
Ce que les consommateurs peuvent réellement consommer, c'est 0-5, mais après 6 et 6, ils ne peuvent plus consommer
Mais le journal a peut-être écrit à 9
Pourquoi?
Ceci est lié à l'ISR
Par exemple, maintenant le producteur veut écrire 3 et 4 (comme le montre la figure 1), selon les règles, 3 et 4 seront écrits en premier au leader (comme le montre la figure 2).
À ce stade, follow1 et follow2 peuvent ne pas synchroniser 3 et 4, et cela peut entrer dans la situation de la figure 3.
kafka要求必须全部同步了,HW才能升高
Pour le moment, HW ne peut pas être augmenté