What we're about

Spotkania ludzi, którzy chcą dzielić się wiedzą z zakresu Javy, architektury, testowania,...

Upcoming events (1)

LJUG 2022#1 Wojtek Rząsa From HTTP to Kafka-based microservices

# Mikroserwisy -- od HTTP do Kafki
## (czyli tam i z powrotem?)
Wojtek Rząsa RRUG, Flyr

Komunikacja w mikroserwisach -- jak powinna być zrealizowana? Oczywiście komunikacja oparta na HTTP jest łatwiejsza do poprawnej implementacji i zapewne także do zaprojektowania. Zwłaszcza, że wielu deweloperów i architektów ma sporo doświadczenia z takim podejściem. Z drugiej strony podejście asynchroniczne, oparte na wiadomościach przesyłanych za pomocą kolejek ma wiele zalet. Pozwala tworzyć rozwiązania odporne na awarie, które nawet w przypadku wystąpienia usterek czy przeciążeń nadal mogą dostarczać usługi użytkownikom.

Większość komunikacji jaką w FLYR Inc. zrealizowaliśmy w naszym produkcie byłą synchroniczna, oparta na HTTP. Na pewnym etapie rozwoju systemu okazało się jednak, że do zrealizowania wymaganej funkcjonalności potrzebujemy czegoś bardziej elastycznego i... asynchronicznego. Jakie decyzje podjęliśmy? Co zrobiliśmy, żeby te decyzje nie były ostateczne, żebyśmy mogli zmienić te, które w przyszłości okażą się błędne? Jak zapewniliśmy, że deweloperzy będą poprawnie wykorzystywać message brokera, właściwie używać jego sterowników, a każdy serwis będzie miał wiarygodny healthcheck dla Kubernetes? Na te pytania postaram się odpowiedzieć opowiadając swoją historię. Na podsumowane opowiem też parę historii o tym z jakimi problemami walczyliśmy przy samym wdrażaniu asynchronicznej komunikacji w naszym systemie i czego się przy tej okazji nauczyliśmy.

Nie mam dla Was jedynie słusznych rozwiązań i rad, które zawsze się sprawdzą. Ale mogę podzielić się z Wami błędami, które udało nam się naprawić i tymi, których udało nam się uniknąć.

Bio: Informatyk z zamiłowania i z zawodu. Inżynier z doktoratem. Od dawna interesuje się systemami rozproszonymi, wytwarzaniem oprogramowania i samym programowaniem. Po 15 latach pracy akademickiej i badania systemów rozproszonych obecnie tworzy oprogramowanie dla FLYR Inc. (http://flyrlabs.com). Współtworzy Rzeszowską grupę użytkowników języka Ruby (http://RRUG.pl). Więcej na https://linkedin.com/in/wrzasa/.

Past events (50)

Photos (148)