🚨 Jak Zarządzać Wdrożoną Aplikacją w Mikroserwisach Spring Boot [Live Workshop] 🚨

Jak zapanować nad działającym systemem mikroserwisów? Jak diagnozować problemy zanim staną się awarią i mieć pełną kontrolę nad kondycją aplikacji? 🔍⚙️
W czasie tego praktycznego warsztatu poznasz narzędzia i podejścia, które pozwolą Ci utrzymać aplikację w dobrej formie - od środowiska dev aż po produkcję.

W trakcie live’a:
SoftBull - 🚨 Jak Zarządzać Wdrożoną Aplikacją w Mikroserwisach Spring Boot [Live Wor...

źródło: zarzadzanie-mikroserwisami

Pobierz
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

🚨 Kafka 4.0 + Spring Boot – Integracja w Praktyce [Jednorazowa Powtórka Live Workshopu] 🚨

Jak działa najnowsza Apache Kafka 4.0 w praktyce? Jak zbudować system, który analizuje nastroje użytkowników i wyświetla je na mapie świata? 🔍🌍
Podczas tego wyjątkowego warsztatu krok po kroku połączymy streaming danych, analizę sentymentu i mikroserwisy w jednym, działającym projekcie.

W trakcie live’a:
SoftBull - 🚨 Kafka 4.0 + Spring Boot – Integracja w Praktyce [Jednorazowa Powtórka L...

źródło: kafka4

Pobierz
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

🚀 Kafka 4.0 + Spring Boot – Integracja w Praktyce [Live Workshop]🚀

Jak działa najnowsza Apache Kafka 4.0 w praktyce? Jak zbudować system, który analizuje nastroje użytkowników i wyświetla je na mapie świata? 🔍🌍
Podczas warsztatowego live połączymy streaming danych, AI i mikroserwisy w jednym, konkretnym projekcie.

W planie:
SoftBull - 🚀 Kafka 4.0 + Spring Boot – Integracja w Praktyce [Live Workshop]🚀

Jak ...

źródło: kafka4

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

🚀 Apache Kafka – Krwiobieg Twoich Mikroserwisów! 🚀

Jak zbudować skalowalny i wydajny system oparty na zdarzeniach? 🤔 Już 19 grudnia o 19:00 dowiesz się, jak wykorzystać Apache Kafka, by opanować świat mikroserwisów!

W programie:
✅ Poznasz architekturę i podstawowe elementy Kafki.
SoftBull - 🚀 Apache Kafka – Krwiobieg Twoich Mikroserwisów! 🚀

Jak zbudować skalowa...

źródło: 18015016703520164477

Pobierz
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

🚀 Apache Kafka – Jak Narzędzie LinkedIn Zdobywa Świat Przetwarzania Danych? 🔥

Czym jest Apache Kafka? Dlaczego LinkedIn, Netflix, Uber czy Goldman Sachs nie mogą się bez niej obejść? 🤔 To narzędzie to fundament nowoczesnej architektury przetwarzania danych – dowiedz się, dlaczego!

W artykule:
✅ Jak Apache Kafka rewolucjonizuje systemy mikroserwisowe i Big Data.
SoftBull - 🚀 Apache Kafka – Jak Narzędzie LinkedIn Zdobywa Świat Przetwarzania Danyc...

źródło: apache-kafka

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

✨️ Live: Apache Kafka w Świecie Mikroserwisów! 🚀 Już w poniedziałek, 16 grudnia o 19:00!

💡 Weź udział w wyjątkowym warsztacie, podczas którego dowiesz się, jak wykorzystać Apache Kafka do budowy skalowalnych i wydajnych systemów mikroserwisowych opartych na zdarzeniach. Zdobądź praktyczne umiejętności, które od razu zastosujesz w swoich projektach.

Podczas szkolenia:
✅ Poznasz architekturę i kluczowe elementy Apache Kafka.
SoftBull - ✨️ Live: Apache Kafka w Świecie Mikroserwisów! 🚀 Już w poniedziałek, 16 g...

źródło: apache-kafka

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

✨️ Live: Zaprojektuj System Generowania eBooków z Lokalnym Modelem AI i Spring Boot! 🚀 Już w poniedziałek, 25 listopada o 19:00!

💡 Weź udział w wyjątkowym warsztacie, podczas którego nauczysz się budować kompletny system generowania eBooków oparty na lokalnych modelach AI. Zobacz, jak krok po kroku stworzyć rozwiązanie, które działa w pełni lokalnie, eliminując potrzebę korzystania z płatnych usług API, takich jak OpenAI.

Podczas szkolenia:
✅ Dowiesz się, jak wykorzystać lokalne modele językowe (LLM) do
SoftBull - ✨️ Live: Zaprojektuj System Generowania eBooków z Lokalnym Modelem AI i Sp...

źródło: ollama

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

✨️ Live: Architektura Mikroserwisów – Stwórz Rozproszony System Sprzedaży e-Booków! 🚀 Już w poniedziałek o 19:00!

💡 Przygotuj się na warsztaty z architektury mikroserwisów! Zobacz, jak krok po kroku zaprojektować rozproszony system z wykorzystaniem Spring Cloud, aby tworzyć skalowalne aplikacje.

Podczas szkolenia:
✅ Dowiesz się, jak zarządzać i konfigurować mikroserwisy, by zapewnić niezawodność i stabilność całego systemu.
SoftBull - ✨️ Live: Architektura Mikroserwisów – Stwórz Rozproszony System Sprzedaży ...

źródło: architektura-zapowiedz

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Komunikacja dwóch mikroserwisów z Symfony Messengerem

https://gildia-developerow.pl/komunikacja-dwoch-mikroserwisow-z-symfony-messengerem/ ()

W poprzednim wpisie zajmowaliśmy się tematem przetwarzania asynchronicznego wiadomości za pomocą komponentu Symfony Messenger. Czy wiecie, że Messenger służy również do komunikacji dwóch serwisów ze sobą? Nie? No to zaraz się dowiecie ( ͡º ͜ʖ͡º)

Tagi: #programowanie, #naukaprogramowania i #programista15k w #programowanie,
CppPolska - Komunikacja dwóch mikroserwisów z Symfony Messengerem

https://gildia-dev...

źródło: neom-s0A8sa9oasY-unsplash-scaled

Pobierz
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czytam długo o stateful vs stateless microservices i dalej nie czaję tematu i mam wrażenie, że każdy w google pisze co innego.

Jak mam koszyk w sklepie internetowym i dodaje produkty to mikroserwis, gdzie mamy endpoint /cart/addItem POST i zapisujemy w bazie koszyk jest stateless czy stateful? Bo teoretycznie w tym poscie wysyłamy id koszyka, które już wcześniej otrzymaliśmy z endpointa (więc kolejne requesty polegają na poprzednich) oraz produkty, a z drugiej
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Piszę sobie taki projekt do zarządzania kinem i zastanawiam się jak ugryźć rezerwacje miejsc jeśli chodzi o moduły. Wymyśliłem na razie coś takiego, że moduł do rezerwacji pyta moduł katalogu (filmy, seanse, miejsca) o szczegóły miejsca (w kontekście rezerwacji interesuje mnie tylko czy miejsce jest dostępne i czas do seansu), po udanej rezerwacji publikuje event, że miejsce zostało zarezerwowane i moduł katalogu musi obsłużyć ten event i zmienić status miejsca na zajęte.
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 1
@Krolik Mi po nic xD Ale nauka polega na rozpracowywaniu takich prostych przykładów. Jak op pyta o mikroserwisy, to po co odpowiadać mu żeby sobie zrobił monolit.
  • Odpowiedz
@Nofenak Wygląda na to że model który aktualnie posiadasz jest nieoptymalny. Moduł od rezerwacji powinien być źródłem wiedzy na temat rezerwacji konkretnego miejsca na konkretne wydarzenie. Pobieranie informacji o wolnych miejscach oraz zmiana ich statusu powinny korzystać z tego modułu. Miejsce na sali jest wtedy agregatem, który należy do bounded contextu rezerwacji i który pilnuje spójności danych wokół konkretnej rezerwacji. Wtedy ten agregat posiada referencję do wydarzenia z modułu katalogu. Katalog
  • Odpowiedz
W jaki sposób dzielić aplikację na moduły (modularny monolit) lub mikroserwisy w optymalny sposób? Wiem, że jest to związane z bounded contextem czy domeną jak zwał, tak zwał, ale szukam konkretnych wskazówek i przykładów. Takie 2 głównie problemy jakie widzę, to raz, żeby nie skończyć z rozproszonymi monolitem czyli sytuacją kiedy każdy moduł/mikroserwis ściśle zależy od całej reszty i muszą być wdrażane jednocześnie, a 2 żeby też nie zrobić za dużych modułów/mikroserwisów,
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Nie ma złotej rady, czy idealnego granicy, dzieł tak i tak to bedzie dobrze. Bylem na szkoleniu DNA na kilku warsztatach z Sobótka, przeczytałem książkę która bardzo polecam
Learning Domain-Driven Design ta z małpką
Pracuje z kodem który jest bardzo poprawnie napisany (przyszedłem jak już był taki) jako modularny monolit.
Szkolenia i książka dużo mi daly, ale nie oznacza to że bez problemu teraz destyluje agregaty idealnie.
  • Odpowiedz
Siema mirki programiści! ( ͡° ͜ʖ ͡°)

Chciałbym się trochę podszkolić w pewnej rzeczy - aby zacząć robić bardziej modułowe aplikacje, a nie monolity. Zacząłbym od backendu. Czytałem trochę o architekturze mikroserwisów - wydaje się to ciekawę. Mógłbym np rozdzielić hipotetyczną aplikację dajmy na to - na 4 mniejsze serwisy: autoryzacja userów, produkty, zamówienia, płatności. I kilka pytań:

1) Jak wygląda sprawa autoryzacji? Np do mikroserwisu wysyłam żadanie z nazwą usera i hasłem
  • 23
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

2. Nie autoryzować, mikroserwisy gadają ze sobą w zamkniętej sieci, utworzonej np. na poziomie dockera, dostęp z zewnątrz jest odcięty.

1. User z UI prawdopodobnie nie będzie uderzał do poszczególnych serwisów samodzielnie a bardziej przez API gateway, wtedy mając na API gateway listę endpointow możesz zapiąc autoryzację w jednym miejscu
  • Odpowiedz
Go Micro jako baza do apki opartej o mirkoserwisy (tfu...mikroseriwsy)

Brakuje dobrego tutka na start, dlatego jeżeli ktoś chciałby coś fajnego napisać, chętnie postaram się przeprowadzić przez start i będzie dobra baza na szybki wpis ;)

Sam z tym działam aktualnie. Platforma zapowiada się naprawdę ciekawie.

https://micro.dev
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#programowanie #mikroserwisy

Czy i gdzie powinny być walidowane dane pomiędzy mikroserwisami?

Uczę się pisząc apkę (MERN i takie tam), z założenia architektura oparta o mikroserwisy. Pytanie moje brzmi - tak ogólnie czy i gdzie powinny być walidowane dane przesyłane w wiadomościach pomiędzy mikroserwisami?

W
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Wegrzynski: Dane powinny być zawsze weryfikowane.
Poza tym nie zawsze jesteś w stanie dokonać pełnej walidacji bez np. sięgania do bazy (np. sprawdzając unikalność wartości) więc lepiej zrobić walidację w serwisie B i zwracać błędy do A, który potem wyśle je do klienta.
Więc zrób walidację wstępną w A (poprawność wartości, długość, brak pustych itp.).
A w B zrób pełną walidację.
  • Odpowiedz
@Wegrzynski: w sumie ten twój mikroserwis to architektura restowa, i powinieneś sprawdzać na 3 poziomach. Frontend (UX friendly jest instant feedback, że email nie jest w formacie, data jest zła itp). Dalej na poziomie API (kontroler/serwis, gdzie tam framework każe) i zwrócić co jeszcze nie pasuje backendowi, jeśli nie pasuje. No i trzeci poziom to baza, bo nie chcesz (bardzo nie chcesz) mieć złych danych w bazie.
  • Odpowiedz
#programowanie #mikroserwisy
Ogólnie mirki mam pytanie. Tyle się mówi, że mikroserwis powinien być niezależny itp itd. To ja się zastanawiam jak mój mikroserwis, który dajmy na to pobiera dane z zewnetrznych api i zapisuje je do bazy ma być niezależny? Jeśli używam do tego bazy relacyjnej to w przypadku kiedy w odpowiedzi z api coś się zmieni i bedzie to wymagało zmian w bazie danych to te zmiany
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#programowanie #mikroserwisy #java
Czy jak w projekcie używacie mikroserwisów to czy każdy z nich ma osobną bazę danych? Słyszałem, że tak to powinno wyglądać, ale nie bardzo potrafię sobie wyobrazić w jaki sposób ma to działa jak mikroserwisy są w jakimś tam stopniu ze sobą powiązane. Na przykład:

1. Jeden serwis odpowiedzialny za płatności, a druga za zamówienia. Ale w zamówieniach mam relacje do płatności, więc
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Patres:
1. Tak, można użyć jakiegoś globalnego identyfikatora.
2. Tak, ale nie będą mieć takich samych danych, bo działają w innym kontekście. Przykładowo tabela 'Teacher' w serwisie do generowania planu lekcji będzie miała identyfikator i jakieś godziny dostępności, a w drugiej tabeli będzie ten sam identyfikator i jego dane personalne, kontaktowe itp.

Jak mikroserwisy współdzielą te same źródło danych, to masz do czynienia zwykle z big-ball-of-mud i ktoś źle wydzielił
  • Odpowiedz
@Patres: ten współdzielony identyfikator nie może być oparty o sekwencyjnosc, najczęściej się jakiegoś uuid uzywa. Zapisując dane w jednym serwisie musisz mieć gwarancję, że zostaną też zapisane dane w innym serwisie. Można to zrobić bez klucza - poszukaj hasła eventual consistency.
  • Odpowiedz
(dłuższy wpis) 4 filary aplikacji mikroserwisowych z perspektywy Kubernetes

1) Komunikacja

W monolitycznych aplikacjach działających w pojedynczym procesie komponenty wywołują się nawzajem za pomocą metod na poziomie języka programowania lub wywołań funkcji.

Mogą
dnaprawa - (dłuższy wpis) 4 filary aplikacji mikroserwisowych z perspektywy Kubernete...

źródło: comment_1642668940YoJnXpBI6gQZnplMepMOfx.jpg

Pobierz
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@alex-fortune: Możesz bez problemu wysyłać requesty http i dalej iść z kodem - no fizycznie owszem, możesz, ale w praktyce tak się nie robi przy mikroserwisach. Jeśli wysyłasz HTTP request to czekasz na odpowiedź, bo chcesz mieć rezultat. Ale wtedy czy mikroserwisy mają sens? :)
  • Odpowiedz