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
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:
spetz - Dobry,

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

Jedenasty odcinek kursu o mikroserwisach w .NET Core już dostępny -...
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
spetz - Yo,

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

Dziewiąty odcinek kursu o mikroserwisach w .NET Core już dostępny - dzisiaj przedstawiamy kilka przydatnych narzędzi, zaczynając od Vault do przechowywania konfiguracji w bezpieczny sposób, przez Seq do logowania danych, kończąc na Jaeger, który umożliwia śledzenie rozproszonych akcji.

Kod na GitHub:
spetz - Dobry dzień,

Dziewiąty odcinek kursu o mikroserwisach w .NET Core już dost...
via Android
  • 0
@lalalajp2_- może być ciężki, trzeba dość dobrze znać C# oraz mieć pojęcie o tworzeniu Web API, natomiast same koncepty, które się pojawiają są dość agnostyczne względem technologii.
  • Odpowiedz
Dobry,

Ósmy odcinek kursu o mikroserwisach w .NET Core już dostępny - wchodzimy w tematykę rozproszonych transakcji. Zaczynając od omówienia 2PC, przez Event Choreography i kończąc na Saga oraz Process Manager, finalnie implementujemy przykładowy proces tworzenia zamówienia, który wymaga udziału kilku mikroserwisów do jego powodzenia.

Kod na GitHub:
https://github.com/devmentors
spetz - Dobry,

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

Siódmy odcinek kursu o mikroserwisach w .NET Core już dostępny - omawiamy czym jest CorrelationId (a dokładniej CorrelationContext), jak radzić sobie z obsłguą asynchronicznych żądań oraz jak w tym celu można wykorzystać SignalR do aktualizacji statusu w czasie rzeczywistym. Pod koniec wspominamy również o Polly - pokazujemy jak w prosty sposób można zaimplementować np. ponawianie nieudanej operacji.

Kod na GitHub:
https://github.com/devmentors
spetz - Cześć,

Siódmy odcinek kursu o mikroserwisach w .NET Core już dostępny - om...
@Masterczulki: dzięki, bardzo miło słyszeć, podziwiam, że całkowicie zmieniłeś stack :D.
@bussior: tak, będzie na pewno odcinek (albo i 2) poświęcony otoczce CI, CD, DevOps (build serwer, Docker, k8s itp.).
  • Odpowiedz
Dobry dzień,

Szósty odcinek kursu o mikroserwisach w .NET Core już dostępny - wchodzimy w trochę bardziej zaawansowane tematy, i omawiamy mechanizmy Service Discovery oraz Load Balancer z wykorzystaniem narzędzi Consul i Fabio.

Kod na GitHub:
https://github.com/devmentors
spetz - Dobry dzień,

Szósty odcinek kursu o mikroserwisach w .NET Core już dostępn...
Cześć,

Piąty (póki co najdłuższy bo prawie 80 min.) odcinek kursu o mikroserwisach w .NET Core już jest - rozmawiamy o kwerendach (query) i odczycie danych (read side) w CQRS. Implementujemy QueryHandler i DTO, a finalnie wprowadzamy wewnętrzną komunikację HTTP pomiędzy API Gateway i mikroserwisem z wykorzystaniem RestEase.

Kod na GitHub:
https://github.com/devmentors
spetz - Cześć,

Piąty (póki co najdłuższy bo prawie 80 min.) odcinek kursu o mikros...
  • Odpowiedz
Dobry,

Czwarty odcinek kursu o mikroserwisach w .NET Core już jest - wykorzystujemy przesyłanie zdarzeń (wiadomości w kolejce) jako mechanizm asynchronicznej integracji pomiędzy mikroserwisami (jednak z technik zmniejszająca tzw. "temporal coupling" i zwiększająca "resiliency").

Kod na GitHub:
https://github.com/devmentors
spetz - Dobry,

Czwarty odcinek kursu o mikroserwisach w .NET Core już jest - wykor...
  • Odpowiedz
Cześć,

Trzeci odcinek kursu o mikroserwisach w .NET Core został opublikowany - subskrybujemy się pod RabbitMQ w celu przetworzenia nadchodzącej wiadomości, oraz modyfikujemy API Gateway aby obsłużyć żądanie HTTP.

Kod na GitHub:
https://github.com/devmentors
spetz - Cześć,

Trzeci odcinek kursu o mikroserwisach w .NET Core został opublikowa...
  • Odpowiedz
Cześć,

Tak jak obiecaliśmy z Darkiem już jakiś czas temu, tak w końcu nagraliśmy 1 odcinek obiecanego kursu o mikroserwisach w .NET Core. W pierwszej części ogólne info odnośnie konfiguracji, uruchomienia etc.

Kod na GitHub:
https://github.com/devmentors
spetz - Cześć,

Tak jak obiecaliśmy z Darkiem już jakiś czas temu, tak w końcu nagr...
Cześć,

Jakiś czas temu wspominałem, że razem z Darkiem pracujemy nad kodem (a docelowo kursem) poświęconemu tworzeniu mikroserwisów w .NET Core. Po ponad półrocznym "kodzeniu" po godzinach, tonie zebranego "feedbacku" na różnego rodzaju konferencjach i wielu zmianach koncepcji, wstępnie ukończyliśmy pierwszą wersję solucji, a poniżej krótki teaser ( ͡° ͜ʖ ͡°).

Pozwólcie, że z grubsza przekleję (ponieważ całość będzie po angielsku) jakie tematy
spetz - Cześć,

Jakiś czas temu wspominałem, że razem z Darkiem pracujemy nad kodem...
Dobry dzień,
Ponad pół roku temu pytałem Was o inicjatywę dotyczącą stworzenia kursu omawiającego .NET Core, mikroserwisy, Docker itp. Temat oczywiście żyje i przymierzamy się w końcu do rozpoczęcia nagrywania odcinków (po drodze mieliśmy trochę wystąpień na różnych konferencjach, udało się zebrać masę wartościowych opinii, w związku z czym trwa nieustanny refactoring ( ͡° ͜ʖ ͡°)).

Zmieniliśmy również samą koncepcję tzn. chcemy nagrać kurs jako tzw. "wyjście z monolitu" i jego ewolucja w system rozproszony (stąd też w repozytorium pojawił się właśnie projekt monolitu i dodatkowo aplikacja webowa w Angularze 6 - ofc jeszcze niedokończona).

Na ten moment zapraszam Was na świeży wpis omawiający nasz projekt DShop, stos technologiczny itp. (u Darka na blogu znajdziecie omówienie
spetz - Dobry dzień,
Ponad pół roku temu pytałem Was o inicjatywę dotyczącą stworzen...

źródło: comment_tyQPiP4XCHPdhFWGlm6yhnHVoodFQUCq.jpg

Pobierz
@szpongiel: bawiłem się trochę Szkalą a poza JVM to Go - fajne języki z ciekawym podejściem ale jak zwykle, projekty poboczne wzięły górę i przykładowe aplikacje do napisania poszły w odstawkę ( ͡° ͜ʖ ͡°).
  • Odpowiedz