@Hektorrr: Dodam, że zestaw tych wszystkich książek normalnie wyceniony jest na £1,119.85.
Tak więc £14 funtów to prawie jak za darmo a jak wiadomo za darmo to uczciwa cena.
  • Odpowiedz
W jaki sposób debuggujecie swoje mikroserwisy lokalnie?
Zakładając, że cała apka składa się z wielu mikrousług i chcecie mieć debugger dołączony do każdej z nich w tym samym momencie?

Lub czy stosujecie jakieś konkretne rozwiązania do wybierania konkretnej mikrousługi, deployowania do k8s reszty stacku a tą jedną uruchamiacie lokalnie z debuggerem?

Czy może deployucie wszystko i tylko dołączacie zdalnie debugger do wybranej, konkretnej mikrousługi?
Dapr 1.0.0 wydany.
https://github.com/dapr/dapr/releases/tag/v1.0.0

Dapr is a portable, serverless, event-driven runtime that makes it easy for developers to build resilient, stateless and stateful microservices that run on the cloud and edge and embraces the diversity of languages and developer frameworks.

Dapr codifies the best practices for building microservice applications into open, independent, building blocks that enable you to build portable applications with the language and framework of your choice. Each building block is independent and you can use one, some, or all of them in your application.


Dapr
Hektorrr - Dapr 1.0.0 wydany. 
https://github.com/dapr/dapr/releases/tag/v1.0.0

 D...

źródło: comment_1613664724CRstFFBs6XGa5psveO53z0.jpg

Pobierz
@Hektorrr: bawiłem się tylko trochę, ale mam w planie w niedalekiej przyszłości do tego mocniej przysiąść, zwłaszcza że czekałem na oficjalną wersję 1.0 :) Convey to zbiór pomocniczych paczek m.in. do szybkiej "wpinki" infrastruktury (większe podobieństwo np. do Steeltoe).

Dapr działa podobnie jak service mesh - masz po prostu proxy, które jest uruchomione obok docelowej aplikacji i przez nią leci cały ruch (w dużym skrócie). Na pewno uprości sporo
  • Odpowiedz
Ho ho ( ͡° ͜ʖ ͡° )*:
W powietrzu czuć już nastrojowy powiew nowego szkolenia na temat Tworzenia mikrousług ze Spring Cloud
Tym razem dla wszystkich chętnych szykuję potężną dawkę praktycznej wiedzy na temat:
-
SoftBull - Ho ho ( ͡° ͜ʖ ͡° )つ──☆*:・゚
W powietrzu czuć już nastrojowy powiew nowego ...
  • Odpowiedz
Mirki pytanie z seri microserwisy. Rozbijam wlasnie jednego monolita i w niedalekiej przyszlosci czeka mnie rozbicie jeszcze 4 podobnych. Kazdy z nich bedzie mial wewnetrzna baze danych podlaczona w docker-compose oraz kazdy bedzie puszczal podobne queries. Zastanawiam sie czy warto wydzielic pytania do bazy danych jako oddzieliny Docker komponent ze nie duplikowac kodu. Potem podlaczyc go jako jeden kompenent w docker-compose czy moze lepiej sie w to nie bawic i zostawic jak
  • 1
@losbaltica aaa tego typu podobieństwa. Hmm, no to można się zastanowić nad stworzeniem paczki (w c# pewnie jakiś nuget, nie wiem czego Ty używasz), gdzie upchniesz tego typu zależności. Ważne, żeby paczka była mała. Jak masz różne zadania powtarzalne z mikroserwisami to rozbij je na różne paczki np. jedna do bazy danych, jedna do wysyłania do kolejek itd. Można też powtarzać ten kod, zależy jak dużo go jest.
  • Odpowiedz
Szukam jakiś patternów, koncepcji pomysłów na rozwiązanie takiego problemu z #microservices:
0. (przykład nieco uproszczony, dla ułatwienia)
1. serwis przyjmuje po http request wykonania zadania, nie czeka na zakończenie
2. zadanie może trwać kilka godzin
3. każde zadanie polega na cyklicznym odpytywaniu zewnętrznego serwisu po http
4. gdy się zakonczy, zapisujemy status do bazy
@rysi3k_: Taka rada odnośnie dynamoDB to trzymać małe dokumeny(rekordy w tabeli) i używać krótkich nazw pól. W jednym projekcie w którym robiłem jeden model był rozbity na kilkanascie tabeli i nazwy pól były max 2 literowe. Płaci się za każdy read/writeCapacityUnit czyli najlepiej pilnować żeby dokumenty miały <4KB
  • Odpowiedz
@mk321: Klaster k8s dla developerów. Odpalają sobie całą aplikację na tym klastrze, każdy dev ma swój i tylko swój namespace. Za pomocą telepresence możesz lokalny kontener wpiąć do k8s i widzisz swoje zmiany od razu. U jednego klienta projekt to ponad 40 mikroserwisów, uruchomienie takiego czegoś lokalnie to overkill.
  • Odpowiedz
@mk321: utrzymanie obu configow to az taki problem? Mowisz o systemi z 4-5 kontenerow i zakladam ze nowe nie wyrastaja jak grzyby po deszczu co sprint wiec jak raz ogarniecie compose i deploymenty to nie wiem czemu to mialby byc ciagly effort?
a jak nie pasuje to dev klaster - nic madrzejszego nie wymyslimy
  • Odpowiedz
Mirki,
jak powinienem ustawić docker'a pod mikroserwisy, gdzie chcę, żeby każdy serwis miał swoją bazę danych? Mam coś takiego:
serwis_1: Golang + MongoDB
serwis_2: Golang + MongoDB
serwis_3: Golang + MySQL
Wszystko siedzi w jednym repo. Stworzyłem sobie pod każdy serwis Dockerfile dla Go, ale teraz nie wiem jak to ugryźć z tą bazą ( ͡° ʖ̯ ͡°). Normalnie jakbym miał jedną bazę, z której korzysta każdy serwis, to jeden docker-compose.yml i po sprawie. A tu? Dla każdego osobny? Bo w sumie to jak potem uruchomić całą apkę jedną komendą
#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
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, to mogę w przeglądarce zobaczyć JSON z konfigiem discovery-service pod adresem "localhost:8090/discovery-service/default", jednak jak uruchomię kontener discovery-service to
@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