#programowanie #microservices Robię w dla siebie projekt w mikroservices i zastanawiam się na odpowiedzialnością miedzy serwisami. Mam dwa mikroserwisy: użytkownicy (U) i rachunki (R) (gdzie jeden użytkownik może mieć wiele rachunków) oraz logikę że przy jakiejkolwiek operacji na rachunku muszę wcześniej sprawdzić czy użytkownik jest aktywny. To dobrą praktyką jest wysyłanie do serwisu U zapytania czy można wykonać operację i ją zawiesić czy lepiej wykonać operacje i ewentualnie
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej, mam taki problem z Dockerem, że mam dwa mikroserwisy: jeden config-service i jeden discovery-service. Jak uruchomię je bez Dockera (czyli po prostu uruchamiam ich JARy na swoim kompie), to discovery-service sobie normalnie pobiera konfigurację z serwera konfiguracyjnego i wszystko działa. Jednak gdy w dockerze kontenery z obrazów tych aplikacji skonfiguruję tak:

config-service: host port 8090, container port 8090
discovery-service: host port 8060, container port 8060

To wtedy jak uruchomię kontener config-service
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Wrath_of_the_Tyrant: jak odpalasz je w osobnych kontenerach to nie używaj localhost w adresach tylko adresy kontenerow.
Wystartuj je że wspólna siecią, z nazwami itp. Jeśli odpalasz dockera przez VBoxa to zastąp localhost adresem maszyny (domyślnie 192.168.99.100).
I pamiętaj - nigdy nie używaj localhosta.
  • Odpowiedz
via Wykop Mobilny (Android)
  • 1
@Wrath_of_the_Tyrant: jak odpalasz w do dockerze to zamiast localhosta masz nazwę konteneru czyli np kontener 'database' to zastepujesz localhosta w URL na tą nazwę
Żeby to w springu zrobić to polecam użyć profili, w .yml możesz kilka profili w jednym pliku ustawic, poszukaj na necie
Potem tylko ustawiasz zmienna środowiskowa albo przy samej komendzie która odpalasz jara wybierasz profil
  • Odpowiedz
Siema Mireczki, chciałbym into cqrs + es przy użyciu spring cloud stream + kafka trochę już o tym poczytałem ale tylko to zrodziło więcej pytań mianowicie załóżmy, że mamy zwykłą rejestrację użytkownika plus jego późniejszą autentykacje, czyli założenie konta + credentali (login/haslo) + wysłanie linka z potwierdzeniem i po aktywacji konta i podaniu login/hasło wygenerowanie jwt.

Logiczne wydaje się to rozbicie na 3 serwisy

- user serivce
- auth service
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mam do zrobienia jedno zadanie. I nie jestem pewien jak to powinnienem rozumiec tresc. Jeden z microserwisow powinnien byc: "async http server z restowym API". Chodzi tutaj waszym zdanie o serwer ktory korzysta z async np. aiohttp. Czy bardziej tutaj chodzi o implementacje endpointow ktore beda dzialac asynchronicznie (co w sumie ma znaczenie dla geta tylko). #python #programowanie #microservices
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#programowanie #microservices #mikroserwisy #ddd Szukam dobrego rozwiązania komunikacji pomiędzy mikroserwisami. Czy ktoś wie, jaki jest najlepszy sposób na pobranie danych z innego mikroserwisu? Zakładam, że pobieranie przez REST jest słabym rozwiązaniem (ryzyko stworzenia gwiazdy śmierci). Kolejkowanie byłoby spoko gdybym nie potrzebował tych danych adhoc. Ktoś ma doświadczenie z takimi scenariuszami?
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 0
@MarcelMcOne: Jeśli masz dużo microserwisów to jak architektura nie daje rady, to wprowadź kolejną warstwę. Np. szynę ESB. Albo lżejsze rozwiązanie API Gateway, żebyś zawsze wiedział gdzie strzelasz i ile hopów. Albo technologiczne rozwiązanie tego ostatniego GraphQL.
  • Odpowiedz
@pin-gwin: wypowiadam się nie na temat książki tylko odnośnie głupiego gadania: "nie chce tego nawet za darmo" tylko po co w ogóle to komentować? Dwa dni temu była książka .NET, czy ktoś pisał, że nie chce tego brać? Nie - po prostu jak nie chce to nie bierze, ale zawsze przyjdzie jakiś podludź co myśli że jego opinia cokolwiek znaczy.
  • Odpowiedz