W systemach składających się z mikroserwisów bardzo ważna jest komunikacja między nimi. Aby ją ożywić, można skorzystać z tradycyjnego podejścia opartego na zwykłych żądaniach lub podejścia opartego na brokerach wiadomości. Sprawdź, jakie są ich wady i zalety oraz zdecyduj, które podejście jest dla Ciebie najlepsze.

https://bulldogjob.pl/news/993-jak-sprawic-aby-mikroserwisy-sie-ze-soba-porozumiewaly

#backend #programowanie #mikroserwisy
Bulldogjob - W systemach składających się z mikroserwisów bardzo ważna jest komunikac...

źródło: comment_1583849641j7japcsWS9VMkMEZFNwlW2.jpg

Pobierz
  • Odpowiedz
@alkb: to slabo ale niestety takie sa realia w wielu firmach, ktore ciągną od lat kredyt technologiczny. Podobnie jest u mnie z tym, ze problem jest nie po stronie biznesu a ludzi, którzy maja slomiany zapal. Checi sa ale jak sam Martin Fowler mowi, ze cos jest epic journey to śmiechu nie lada kiedy zwykle korpo klepacze monolitow w vb6 biorą sie za DDD bazując wyłącznie na swoim doświadczeniu. Jakbym kiedys
  • Odpowiedz
Cześć,

Kurs Mikroserwisy .NET oficjalnie dostępny w sprzedaży! Promocyjna cena 699 PLN + VAT tylko do 7 lutego ( ͡° ͜ʖ ͡°)

A dla mirków i mirabelek kod rabatowy 10%: ***ROZDAJO_MIRKOSERWISY***

Zakup, jak i sam dostęp do kursu, zrealizujesz poprzez naszą platformę edukacyjną (a w niej m.in. lekcje wideo, historia obejrzanych filmów, dodatkowe materiały i wiele innych funkcjonalności):

platform.devmentors.io

platform.devmentors.io/courses/mikroserwisy-net

Zapraszamy również do dołączenia do naszych otwartych społeczności:
spetz - Cześć,

Kurs Mikroserwisy .NET oficjalnie dostępny w sprzedaży! Promocyjna ...

źródło: comment_RDFtjHry40AKBgphoVhDkk25tilCHCoT.jpg

Pobierz
via Android
  • 2
@cichykacik zero zwrotów mieliśmy, jedyny jaki był to dofinanowanie przez firmę i ponowny zakup :) nie boimy się, wierzymy w uczciwość kupujących, a poza tym takie jest prawo, zresztą chcemy być fair i ludzie nie boją się wtedy kupić kota w worku (poza samym wglądem w lekcje demo) :)
  • Odpowiedz
Dobry dzień,

Mamy kolejną lekcję demo — blisko godzina wprowadzenia (teoretycznego i praktycznego) do asynchronicznej integracji przez zdarzenia z wykorzystaniem brokera wiadomości RabbitMQ, dostępną w wersji testowej naszej platformy:

https://platform-test.devmentors.io

Wideo znajdziecie w szczegółach kursu „Mikroserwisy .NET” (sekcja: „Architektura sterowana zdarzeniami”). Można też zalogować się do konta testowego (e-mail: *dev@devmentors.io*, hasło: *Test123456!*)

Będziemy wdzięczni za wszelkie opinie o wersji testowej ( ͡° ͜ʖ ͡°)

#dotnet #programowanie #
spetz - Dobry dzień,

Mamy kolejną lekcję demo — blisko godzina wprowadzenia (teore...

źródło: comment_dED9tBCOR1YKdtr7tIPayOHFEAmmf1fF.jpg

Pobierz
Zapraszamy do kolejnej lekcji demo z nadchodzącego kursu Mikroserwisy .NET, w której znajdziesz ponad 40 min technicznego mięsa okraszonego odpowiednią teorią związaną z OpenTracing i wykorzystaniem m.in. narzędzia Jaeger, pozwalającego nam śledzić wymianę komunikatów w naszym rozproszonym systemie — zarówno te synchroniczne (Web API), jak i asynchroniczne wykorzystujące brokera wiadomości (RabbitMQ).

#dotnet #programowanie #csharp #mikroserwisy #akademiaspetza #naukaprogramowania
spetz - Zapraszamy do kolejnej lekcji demo z nadchodzącego kursu Mikroserwisy .NET, w...
@Pan_Slon: materiał nie jest listowany publicznie z jednego, prostego powodu — kanał DevMentors, który prowadzimy na YT, ma głównie odbiorców zagranicznych (anglojęzycznych, dla których nagrywaliśmy nasze otwarte kursy na YT), więc nie chcemy w nim mieszać polskimi treściami.
  • Odpowiedz
Dobry dzień,
Długo się do tego zbieraliśmy, zaczynając od naszych projektów na GitHubie związanych z aplikacjami rozproszonymi, przez darmowy kurs na YT, aż w końcu postanowiliśmy wszystko dopieścić, ładnie podzielić i zbudować całkowicie nowy, w pełni otwarty project Pacco dotyczący mikroserwisów oraz zbiór pomocniczych paczek dla infrastruktury nazwanych Convey, które wykorzystujemy m.in. podczas szkoleń stacjonarnych jako trenerzy Bottega IT Minds.

Do rzeczy - przedstawiamy oficjalną stronę kursu Mikroserwisy .NET
spetz - Dobry dzień,
Długo się do tego zbieraliśmy, zaczynając od naszych projektów ...
via Android
  • 3
@bacteria tak, specjalnie, w stylu lat 90 ( ͡º ͜ʖ͡º).

@4n000n nie mamy dzieci :(

@Mazowia nie jest ustalona ale na pewno górne kilkaset złotych - szkolenie stacjonarne trwa aktualnie 6 dni (2 części po 3 dni), gdzie cena za dzień to 1000 zł, więc materiał będzie ten sam albo i bardziej rozbudowany ale cena odpowiednio niższa (kilkukrotnie) :).
  • Odpowiedz
@mirasKo-Kalwario: na szkoleniu online masz po prostu inny punkt widzenia i faktycznie, tracisz ten kawałek z wersji stacjonarnej. Odnośnie kursu - tak trzeba znać C# i .NET dość dobrze, będzie tam sama praktyka, tona kodu, a całość oczywiście okraszona uniwersalną teorią związaną z mikroserwisami.
  • Odpowiedz
  • 1
Mirki, takie pytanie o design w świecie mikroserwisów.

Załóżmy, że mam jakieś duże X API restowe, które jakoś tam z głową domenowo jest zaprojektowane. X API wspiera autoryzację z OAuth2, ale też poza tym wystawia taki zwyczajny endpoint do uwierzytelniania (POST, który zakłada sesję i zwraca ciacho użytkownikowi). Czyli mamy do dyspozycji wszystkie grant typy OAuthowe i zwykłą autoryzację cookiesem.

Teraz chciałbym dorobić UI do tego X API. Tyle, że X API
via Wykop Mobilny (Android)
  • 2
@doubt: w projekcie przy którym pracuję używamy właśnie takiej warstwy pośredniej i sprawdza się to naprawdę fajnie. Frontend nie dostaje żadnych nadmiarowych danych tylko szyte na miarę struktury ukrywając szczegóły API. Z przeglądarki leci 1 request, BFF pod spodem może sobie robić tych reqestów ile zechce a i tak będzie szybko bo działa na tej samej maszynie co backend. Dzięki temu że BFF jest w node, to współdzieli z frontem wszystkie
  • Odpowiedz
@doubt: Pattern, którego szukasz to API Gateway. Możesz skorzystać z czegoś gotowego w stylu Zuul, albo zrobić go po prostu jako osobny mikroserwis, który pośredniczy w callach pomiędzy FE a BE. No i dobrze też mieć osobny serwis, który będzie służył stricte jako Authorization server.
  • Odpowiedz
#prasowkadev 11 sierpnia 2019 roku

Dej #zebroplusy coby się chciało robić prasówki przez najbliższy tydzień ( ͡° ʖ̯ ͡°)

Kilka bardzo złych nawyków przy tworzeniu softu
https://dev.to/ilonacodes/5-bad-habits-for-software-developers-2fmo

Kilka sposobów na szybkie poprawienie jakości kodu w #javascript #frontend
https://dev.to/mlevkov/5-easy-wins-to-refactor-even-the-worst-legacy-code-2bp5

O wartości biznesowej refactoringu, czyli o tym jak przekonać biznes, że to się im opłaca #programista15k
https://dev.to/jamesmh/why-should-you-refactor-your-code-53fd

Google Scholar i ich wybór najbardziej wpływowych prac naukowych #ai #machinelearning
https://www.natureindex.com/news-blog/google-scholar-reveals-most-influential-papers-research-citations-twenty-nineteen

Szybkie
  • Odpowiedz
#prasowkadev 25 lipca 2019 roku

(Nie?)zamierzony wyciek nowego menu #windows 10
https://www.theverge.com/2019/7/24/20708355/microsoft-windows-10-accidental-release-windows-insiders-start-menu

Dlaczego powinieneś pisać emaile w „plaintext”
https://useplaintext.email/

Kolejna garść wskazówek, jak byś jeszcze lepszym programistą #naukaprogramowania
https://medium.com/swlh/being-a-better-programmer-than-this-morning-some-aspects-to-focus-on-501b04d48e29

Wzorzec idempotentnego konsumenta na szybko
https://pradeeploganathan.com/patterns/idempotent-consumer-pattern/

Słów kilka o monitoringu #mikroserwisy w wykonaniu Salesforce Engineering
https://engineering.salesforce.com/implementation-of-a-monitoring-strategy-for-products-based-on-microservices-24ad24c4c3e5

Chcesz zrozumieć jak działa #kafka ?
https://medium.com/@sonusharma.mnnit/apache-kafka-in-depth-49aae1e844be

A może wolisz zrozumieć czym jest MQTT?
https://www.ably.io/concepts/mqtt

Inżynierskim okiem
Czy aby na pewno chodzi o nowe, świecące zabawki? A
  • Odpowiedz
Dobry dzień,

Rok temu, wspólnie z kolegą Darkiem zaczęliśmy tworzyć otwarty projekt DShop dotyczący budowania mikroserwisów w .NET Core. Po kilku miesiącach kodzenia, rozpoczęliśmy nagrywanie kursu Distributed .NET Core - łącznie 15 odcinków i prawie 20 godzin, a wszystko za darmo, wrzucone na YouTube ( ͡° ͜ʖ ͡°).

Być może komuś z Was przydadzą się omawiane koncepty lub wykorzystacie niektóre części kodu w swoich własnych projektach :).

#
Cześć,

Piętnasty (a zarazem ostatni i najdłuższy) odcinek kursu o mikroserwisach w .NET Core już dostępny - przedstawiamy możliwe sposoby "orkiestracji" usług, zaczynając od "bare metal VM", przez takie narzędzia jak Portainer, Kubernetes aż po Ranchera.

Kod na GitHub:
https://github.com/devmentors

Odnośniki do forum, Gitter etc.
https://devmentors.io

#programowanie #programista15k #dotnet #dotnetnews #csharp #dotnetcore #mikroserwisy #akademiaspetza #spetz #devmentors #dshop
spetz - Cześć,

Piętnasty (a zarazem ostatni i najdłuższy) odcinek kursu o mikroser...
Dobry,

Czternasty odcinek kursu o mikroserwisach w .NET Core już dostępny - kontynuujemy temat z poprzedniego odcinka dotyczący testowania aplikacji, tym razem jednak wykorzystując podejście "consumer-driven contract testing" oraz framework Pact.

Kod na GitHub:
https://github.com/devmentors

Odnośniki do forum, Gitter etc.
https://devmentors.io

#programowanie #programista15k #dotnet #dotnetnews #csharp #dotnetcore #mikroserwisy #akademiaspetza #spetz #devmentors #dshop
spetz - Dobry,

Czternasty odcinek kursu o mikroserwisach w .NET Core już dostępny ...
  • Odpowiedz
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
@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
Cześć,

Trzynasty odcinek kursu o mikroserwisach w .NET Core już dostępny - wchodzimy w tematykę testów mikroserwisów (część I) i skupiamy się na testach integracyjnych. Wykorzystując xUnit oraz bibliotekę do testów integracyjnych w ASP.NET Core, zaczynamy od przetestowania Web API (endpoints), przez kontrakty dla danych (deserializacja żądania HTTP z oczekiwaną odpowiedzią, gdzie dane są pobrane z MongoDB), kończąc na testach dla "handlerów" (konsumowanie wiadomości z kolejki) z użyciem RabbitMQ.

Kod na
spetz - Cześć,

Trzynasty odcinek kursu o mikroserwisach w .NET Core już dostępny -...
Dobry,

Dwunasty odcinek kursu o mikroserwisach w .NET Core już dostępny - omawiamy czym są kontenery używając Dockera, budujemy obrazy bazująć na Dockerfile, uruchamiamy kontenery, dołączamy do sieci, przeglądamy logi oraz publikujemy obraz do repozytorium Docker Hub. Finalnie spinamy proces automatycznego budowania aplikacja rozszerzając build serwer (z poprzedniego odcinka) o automatyczne wgrywanie obrazów do repozytorium oraz pokazujemy do czego przydaje się Docker Compose.

Kod na GitHub:
https://github.com/devmentors

Odnośniki do
spetz - Dobry,

Dwunasty odcinek kursu o mikroserwisach w .NET Core już dostępny - ...
  • Odpowiedz
Cześć,

Jedenasty odcinek kursu o mikroserwisach w .NET Core już dostępny - dzisiaj stawiamy pierwsze kroki w kierunku CI & CD, zaczynając od integracji z build service (w naszym przypadku Travis CI), i następnie rozwiązujac problem lokalnych referencji współdzielonego projektu za pomocą użycia własnego feeda NuGet (jak np. MyGet).

Kod na GitHub:
https://github.com/devmentors

Odnośniki do forum, Gitter etc.
https://devmentors.io

#programowanie #programista15k #dotnet #dotnetnews #csharp #dotnetcore #mikroserwisy #akademiaspetza #spetz #devmentors #
spetz - Cześć,

Jedenasty odcinek kursu o mikroserwisach w .NET Core już dostępny -...
Wpadajcie jutro o 18:00 na dobre piwo i porcję wartościowej wiedzy :) Już jutro spotkanie #codemeetings we #wroclaw. Dowiecie się ile prawdy jest w obietnicach o tym, że mikrousługi rozwiążą Wasze wszystkie problemy i w jaki sposób my rozwiązaliśmy znaczną część z tych problemów :)
Dla osób spoza Wrocławia będzie transmisja na żywo na fanpage #rst na Facebooku: https://fb.com/RSTKariera
Tradycyjnie na końcu będzie czas na dyskusje i AMA z uczestnikami :)
vegat - Wpadajcie jutro o 18:00 na dobre piwo i porcję wartościowej wiedzy :) Już jut...

źródło: comment_lB0rIofKH0mbqzmDzKDoSBmBMsY9Tarw.jpg

Pobierz
  • Odpowiedz
Yo,

Dobiliśmy właśnie do 10 odcinka kursu o mikroserwisach w .NET Core - skupiamy się w nim na szeroko pojętych metrykach (czyli czymś mierzalnym w naszej aplikacji np. CPU, RAM, liczba użytkowników, ilość zapytań do serwera etc.).
Do integracji z różnego rodzaju usługami odpowiedzialnymi za przetwarzanie metryk używamy biblioteki AppMetrics i następnie omawiamy InfluxDB, Grafana oraz Prometheus.

Kod na GitHub:
https://github.com/devmentors

Odnośniki do forum, Gitter etc.
https://devmentors.io

#programowanie #programista15k #
spetz - Yo,

Dobiliśmy właśnie do 10 odcinka kursu o mikroserwisach w .NET Core - s...
  • Odpowiedz