À propos du service
TraduitJe suis un ingénieur de données qui vit à l'intérieur des flux d'événements, et Apache Kafka est la base de presque tout ce que je construis. Lorsque vos services doivent communiquer sans attendre, lorsque l'analytique doit réagir en secondes et non en lots nocturnes, ou lorsque vous ne pouvez tout simplement pas vous permettre de perdre un seul message — ce sont exactement les problèmes que je prends en charge. J'ai guidé des clusters Kafka depuis le premier prototype jusqu'à gérer un trafic de millions d'événements par heure et je sais où se cachent les bords tranchants.
Mon travail commence par les données elles-mêmes. Je modélise le domaine en tant qu'événements, décide de ce qui appartient à un sujet et de ce qui n'appartient pas, et choisis une clé de partitionnement pour préserver les garanties d'ordre tout en répartissant la charge de manière uniforme entre les courtiers. Ensuite, je construis le flux lui-même : des producteurs ajustés pour le débit ou la fiabilité, des groupes de consommateurs dimensionnés pour la charge, et des travaux de traitement de flux dans Kafka Streams ou Flink qui joignent, agrègent et enrichissent les données à la volée. Je prends les sémantiques exactement une fois au sérieux : des producteurs idempotents et des écritures transactionnelles afin que les réessais ne deviennent jamais des doublons en aval.
Au-delà du chemin heureux, je m'inquiète de ce qui m'empêche de dormir la nuit. Je mets en place un registre de schémas afin que les producteurs et les consommateurs évoluent sans se casser mutuellement, construis des pipelines Kafka Connect pour pomper des données dans des bases de données et des magasins d'objets et vice versa, et mets en place des files d'attente de lettres mortes, une surveillance et des alertes de retard de consommateurs avant que quoi que ce soit n'atteigne la production. Que vous partiez de zéro ou que vous sauviez un pipeline fragile perdant des messages — je vous aiderai à construire quelque chose en quoi vous pouvez réellement avoir confiance.
— Conception de cluster Kafka, stratégie de sujet et partitions, réglage de la rétention
— Producteurs et groupes de consommateurs, gestion des décalages, rééquilibrage
— Traitement de flux avec Kafka Streams et Apache Flink
— Sémantiques exactement une fois, écritures idempotentes et transactionnelles
— Kafka Connect, registre de schémas, Avro et Protobuf
— Surveillance, alertes de retard de consommateurs et gestion des lettres mortes
Mon travail commence par les données elles-mêmes. Je modélise le domaine en tant qu'événements, décide de ce qui appartient à un sujet et de ce qui n'appartient pas, et choisis une clé de partitionnement pour préserver les garanties d'ordre tout en répartissant la charge de manière uniforme entre les courtiers. Ensuite, je construis le flux lui-même : des producteurs ajustés pour le débit ou la fiabilité, des groupes de consommateurs dimensionnés pour la charge, et des travaux de traitement de flux dans Kafka Streams ou Flink qui joignent, agrègent et enrichissent les données à la volée. Je prends les sémantiques exactement une fois au sérieux : des producteurs idempotents et des écritures transactionnelles afin que les réessais ne deviennent jamais des doublons en aval.
Au-delà du chemin heureux, je m'inquiète de ce qui m'empêche de dormir la nuit. Je mets en place un registre de schémas afin que les producteurs et les consommateurs évoluent sans se casser mutuellement, construis des pipelines Kafka Connect pour pomper des données dans des bases de données et des magasins d'objets et vice versa, et mets en place des files d'attente de lettres mortes, une surveillance et des alertes de retard de consommateurs avant que quoi que ce soit n'atteigne la production. Que vous partiez de zéro ou que vous sauviez un pipeline fragile perdant des messages — je vous aiderai à construire quelque chose en quoi vous pouvez réellement avoir confiance.
— Conception de cluster Kafka, stratégie de sujet et partitions, réglage de la rétention
— Producteurs et groupes de consommateurs, gestion des décalages, rééquilibrage
— Traitement de flux avec Kafka Streams et Apache Flink
— Sémantiques exactement une fois, écritures idempotentes et transactionnelles
— Kafka Connect, registre de schémas, Avro et Protobuf
— Surveillance, alertes de retard de consommateurs et gestion des lettres mortes