O usłudze
PrzetłumaczoneJestem inżynierem danych, który żyje w strumieniach zdarzeń, a Apache Kafka jest fundamentem niemal wszystkiego, co buduję. Kiedy Twoje usługi muszą rozmawiać bez czekania, kiedy analizy muszą reagować w ciągu sekund, a nie nocnych wsadów, lub kiedy po prostu nie możesz sobie pozwolić na utratę pojedynczej wiadomości — to są dokładnie problemy, które podejmuję. Prowadziłem klastry Kafka od pierwszego prototypu do obsługi ruchu milionów zdarzeń na godzinę i wiem, gdzie ukrywają się ostre krawędzie.
Moja praca zaczyna się od danych samych w sobie. Modeluję domenę jako zdarzenia, decyduję, co należy do tematu, a co nie, i wybieram klucz partycjonowania, aby zachować gwarancje porządku, jednocześnie równomiernie rozkładając obciążenie między brokerami. Następnie buduję sam strumień: producentów dostosowanych do przepustowości lub niezawodności, grupy konsumentów dostosowane do obciążenia oraz zadania przetwarzania strumieniowego w Kafka Streams lub Flink, które łączą, agregują i wzbogacają dane w locie. Traktuję semantykę dokładnie raz poważnie: idempotentni producenci i transakcyjne zapisy, aby ponowne próby nigdy nie stały się duplikatami w dół strumienia.
Poza szczęśliwą ścieżką martwię się o to, co nie daje mi spać w nocy. Tworzę rejestr schematów, aby producenci i konsumenci ewoluowali bez łamania się nawzajem, buduję potoki Kafka Connect, aby przesyłać dane do baz danych i magazynów obiektów i z powrotem, oraz ustawiam kolejki martwych listów, monitorowanie i alerty opóźnienia konsumentów, zanim cokolwiek trafi do produkcji. Niezależnie od tego, czy zaczynasz od zera, czy ratujesz delikatny potok tracący wiadomości — pomogę zbudować coś, czemu naprawdę możesz zaufać.
— Projektowanie klastra Kafka, strategia tematów i partycje, dostosowywanie retencji
— Producenci i grupy konsumentów, zarządzanie offsetami, ponowne równoważenie
— Przetwarzanie strumieniowe z Kafka Streams i Apache Flink
— Semantyka dokładnie raz, idempotentne i transakcyjne zapisy
— Kafka Connect, rejestr schematów, Avro i Protobuf
— Monitorowanie, alerty opóźnienia konsumentów i obsługa martwych listów
Moja praca zaczyna się od danych samych w sobie. Modeluję domenę jako zdarzenia, decyduję, co należy do tematu, a co nie, i wybieram klucz partycjonowania, aby zachować gwarancje porządku, jednocześnie równomiernie rozkładając obciążenie między brokerami. Następnie buduję sam strumień: producentów dostosowanych do przepustowości lub niezawodności, grupy konsumentów dostosowane do obciążenia oraz zadania przetwarzania strumieniowego w Kafka Streams lub Flink, które łączą, agregują i wzbogacają dane w locie. Traktuję semantykę dokładnie raz poważnie: idempotentni producenci i transakcyjne zapisy, aby ponowne próby nigdy nie stały się duplikatami w dół strumienia.
Poza szczęśliwą ścieżką martwię się o to, co nie daje mi spać w nocy. Tworzę rejestr schematów, aby producenci i konsumenci ewoluowali bez łamania się nawzajem, buduję potoki Kafka Connect, aby przesyłać dane do baz danych i magazynów obiektów i z powrotem, oraz ustawiam kolejki martwych listów, monitorowanie i alerty opóźnienia konsumentów, zanim cokolwiek trafi do produkcji. Niezależnie od tego, czy zaczynasz od zera, czy ratujesz delikatny potok tracący wiadomości — pomogę zbudować coś, czemu naprawdę możesz zaufać.
— Projektowanie klastra Kafka, strategia tematów i partycje, dostosowywanie retencji
— Producenci i grupy konsumentów, zarządzanie offsetami, ponowne równoważenie
— Przetwarzanie strumieniowe z Kafka Streams i Apache Flink
— Semantyka dokładnie raz, idempotentne i transakcyjne zapisy
— Kafka Connect, rejestr schematów, Avro i Protobuf
— Monitorowanie, alerty opóźnienia konsumentów i obsługa martwych listów