Years ago I wanted to start learning Domain-Driven Design. It was quite a popular topic, many of my colleagues were discussing it. The problem, as always, was where to start. I decided to ask one of my old mentors. He told me, “MJ, there is a great book about DDD called the Blue Book. Go and read it and everything will be clear. There is nothing better on the market”. “Well, it m...
Architektura 514 dni, 4 godziny, 16 minut temu 251 źrodło rozwiń
Pandemie już za nami a z nami wciąż nagrywanie. Od ośmiu miesięcy nagraliśmy już 12 prelekcji. Jeśli jeszcze nie znałeś naszego kanału, zachęcamy do przejrzenia playlisty "KGD .NET - Klub Studio AGH".
Architektura 688 dni, 3 godziny, 50 minut temu 177 źrodło rozwiń
In recent years, I have encountered many problems in IT companies caused by incorrect software architecture. What do I mean ? In most cases, this is one direction – either it is too trivial or incredibly complicated in relation to the problem it is supposed to solve. Both cases lead to performance problems and stop the organization from being agile.What do I mean by software architecture? Before I start talking about the problems caused by...
Architektura 709 dni, 3 godziny, 53 minuty temu 163 źrodło rozwiń
Jako, że już od paru lat mam przyjemność być Product Owner’em narzędzi wspomagających proces Disaster Recovery (DR) zauważyłem, że terminy często pojawiające się w tym kontekście jak High Availability (HA) czy Fault Tolerance (FT) są nierzadko ze sobą mylone nawet przez ludzi będących w branży IT wiele lat. Obydwa pojęcia oznaczają zdolność aplikacji do kontynuowania dzia...
Architektura 732 dni, 2 godziny, 13 minut temu 85 źrodło rozwiń
Pomiędzy wrześniem a pierwszymi tygodniami grudnia chcę poświęcić czas, na prace z jedną lub dwoma osobami.
Architektura 880 dni, 4 godziny, 54 minuty temu 151 źrodło rozwiń
Recent years have been marked by microservices. Who among you hasn’t heard of them? They were everywhere – at conferences, groups, job listings, coffee talks, and blog posts. At some point it got to the point where if you weren’t working on a system composed of microservices, it was kind of a problem – you felt the world was getting away from you, and your colleagues were in another galaxy. Someone found a silver bullet for the design of IT systems. On the other...
Architektura 885 dni, 2 godziny, 25 minut temu 152 źrodło rozwiń
Powiedzieć, że nie jestem fanem generowania kodu klienta na podstawie API, to jak nic nie powiedzieć. Uważam, że jest to jeden z pomysłów, który brzmi atrakcyjnie, ale kończy się koszmarem. To fajen marzenie, które nigdy się nie spełnia. Dlaczego? Czytaj więcej w artykule.
Architektura 905 dni, 4 godziny, 50 minut temu 167 źrodło rozwiń
When you implement auth in you application you can be addicted to a provider, like facebook, ofice365 or google. It always better to be independent of external contract. How to handle it? How to configure Auth to be independent of provider?
Architektura 908 dni, 4 godziny, 44 minuty temu 83 źrodło rozwiń
Mam coś dużego dla Was. Właśnie wydałem bezpłatnie pierwszą część zadań do warsztatu „Wprowadzenie do EventSourcing”. Przygotowanie ćwiczeń zajęło mi dwa tygodnie pełnego skupienia plus godziny, które spędziłem na Event Sourcing w ostatnich latach 🙂 Stworzyłem go na prywatny warsztat, ale jak zawsze zdecydowałem się udostępnić zadania jako open source. Możesz wykonać warsztaty jako zestaw do samodzielnego uczenia. Wiadomo, że to nie to samo co pełen warsztat, ale powinno dać Ci dobre podstawy do rozp...
Architektura 1010 dni, 3 godziny, 29 minut temu 99 źrodło rozwiń
Legacy Monolit to zwykle bestia. Rozmowy konferencyjne pchają nas do zmiany go w mikroserwisy, wydzielenia Bounded Contextów użycia Kubernetes itd. Są to często dobre rady, ale nie zawsze wykonalne. Są momenty, gdy musimy działać pragmatycznie. Migracja może być zbyt kosztowna i zbyt wymagająca czasowo. Jak przeskalować monolit, gdy kończy nam się czas? Przeczytaj w moim nowym artykule!
Architektura 1041 dni, 3 godziny, 28 minut temu 75 źrodło rozwiń
It has been a long time since microservices were introduced to the world. They had their ups – yeah, let’s use it everywhere – and downs – whaaat, modular monolith only. But that is not what this story will be about.
Architektura 1046 dni, 4 godziny, 8 minut temu 63 źrodło rozwiń
Derek ComartinArchitecture If you’re developing a Monolith or using a Monolithic Architecture doesn’t mean it needs to be a big ball of mud. Most people equate a Monolith with a Big Ball of Mud because it’s highly coupled and difficult to change. However, you can combat it by defining strict boundaries and logically decoupling those boundaries and the data that each boundary owns. To go even further you can loosely couple by leveraging asynchronous messaging between boundaries. Does this sound familia...
Architektura 1061 dni, 5 godzin, 45 minut temu 68 źrodło rozwiń
Ostatni element uniwersalnego mechanizmu do zagwarantowania przetworzenia wiadomości dokładnie raz. Prosta implementacja Inbox'a w F#
Architektura 1073 dni, 4 godziny, 11 minut temu 68 źrodło rozwiń
Jak zintegrować Martne z narzędziami typu Kafka czy nawet innymi bazami danych? Pomoże w tym funkcja zwana Async Daemon. W skrócie, jest to proces działający w tle, który zapewnia asynchroniczne przetwarzanie zdarzeń. Domyślnie używany jest do projekcji, ale może być używany jako baza do pub/sub.
Architektura 1087 dni, 3 godziny, 31 minut temu 42 źrodło rozwiń
Prosta implementacja Outbox'a w F#
Architektura 1087 dni, 3 godziny, 31 minut temu 63 źrodło rozwiń
Snapshoty w Event Sourcing są przereklamowane. Nie powinny być używane jako domyślny wybór architektoniczny, ale raczej jako czysto techniczna optymalizacja. Czasami jednak może to być pragmatyczny wybór lub dobry kompromis. Napisałem, jak sobie z nimi radzić przy pomocy Marten.
Architektura 1094 dni, 2 godziny, 42 minuty temu 66 źrodło rozwiń
.NET się zmienia. Staje się coraz lżejszy. Minimal API są tego przykładem. Pozwalają na szybkie zbudowanie API i uruchomienie nowego serwisu. W dobie mikroserwisów i Cloud jak znalazł. Przetestowałem, jak sprawdzą się z innym wzorcem promującym prosty podział kodu: CQRS. Czytaj dalej by zobaczyć jakie są moje wnioski.
Architektura 1101 dni, 3 godziny, 51 minut temu 281 źrodło rozwiń
Wersjonowanie zdarzeń dla osób uczących się Event Sourcing jest jak potwór, którym straszy się dzieci. To upiorna opowieść opowiedziana przy ognisku. Jest w tym trochę prawdy, bo migracje są zawsze wyzwaniem. W nowym artykule pokazałam proste, praktyczne wzory z próbkami, jak sobie z tym poradzić!
Architektura 1108 dni, 3 godziny, 42 minuty temu 54 źrodło rozwiń
Zmotywowany ostatnimi wątkami na HackerNews i Reddit, postanowiłem tym razem odpowiedzieć! EventStreaming jest zbyt często mylony z EventSourcing. Jest to szkodliwe dla obu wzorców, a najbardziej dla ludzi popełniających ten błąd. W swoim artykule wyjaśniłem, czym się różnią i dlaczego jest to ważne.
Architektura 1114 dni, 3 godziny, 41 minut temu 72 źrodło rozwiń
Czym jest logika aplikacyjna i co powinno się w niej znaleźć skoro jest czymś osobnym niż logika domenowa? Jak ma się ten podział do architektury warstwowej lub portów i adapterów? Czy termin logika aplikacyjna, którego używamy na co dzień, jest jasny i porządkuje naszą pracę, czy wręcz przeciwnie?
Architektura 1115 dni, 3 godziny, 5 minut temu 117 źrodło rozwiń