Partage de technologie

Fichier EIK Beat Kafka

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1. Introduction à Kafka

1. définition de kafka

Kafka est une file d'attente de messages distribuée (MQ, Message Queue) basée sur le modèle de publication/abonnement. Elle est principalement utilisée pour le calcul en temps réel et la collecte de journaux dans le domaine du Big Data.

2. Introduction à Kafka

Kafka a été initialement développé par Linkedin. Il s'agit d'un système middleware de messages distribués qui prend en charge les partitions et plusieurs répliques et est coordonné par Zookeeper. Sa plus grande fonctionnalité est qu'il peut traiter de grandes quantités de données en temps réel pour répondre à divers scénarios de demande, tels que. comme système de traitement par lots basé sur hadoop, système temps réel à faible latence, moteur de streaming Spark/Flink, journal d'accès nginx, service de messagerie, etc., écrit en langage scala,
Linkedin a contribué à la Fondation Apache en 2010 et est devenu l'un des principaux projets open source.

3. Pourquoi avez-vous besoin de Message Queuing (MQ)

La raison principale est que dans un environnement à forte concurrence, les demandes de synchronisation ne sont pas traitées à temps et les demandes sont souvent bloquées. Par exemple, un grand nombre de requêtes accèdent simultanément à la base de données, entraînant des verrous de lignes et de tables. Enfin, trop de threads de requêtes s'accumuleront, déclenchant trop d'erreurs de connexion et déclenchant un effet d'avalanche.
Nous utilisons des files d'attente de messages pour traiter les demandes de manière asynchrone afin de soulager la pression sur le système. Les files d'attente de messages sont souvent utilisées dans le traitement asynchrone, la réduction des pics de trafic, le découplage d'applications, la communication de messages et d'autres scénarios.

Actuellement, les middlewares MQ les plus courants incluent ActiveMQ, RabbitMQ, RocketMQ, Kafka, etc.

4. Avantages de l'utilisation des files d'attente de messages

(1) Découplage
Permet d'étendre ou de modifier les processus des deux côtés indépendamment, à condition qu'ils respectent les mêmes contraintes d'interface.

(2) Restauration
Lorsqu’un composant du système tombe en panne, cela n’affecte pas l’ensemble du système. La file d'attente de messages réduit le couplage entre les processus, de sorte que même si un processus traitant des messages raccroche, les messages ajoutés à la file d'attente peuvent toujours être traités après la récupération du système.

(3) Mise en mémoire tampon
Il permet de contrôler et d'optimiser la vitesse du flux de données à travers le système et de résoudre le problème des vitesses de traitement incohérentes des messages de production et des messages des consommateurs.

(4) Flexibilité