In previous posts I’ve talked about a problem which I’ve seen many times – modern coupling. In this post I will give you a list of tools for discovering proper service boundaries that will reduce that coupling to its minimum.
Strona głównaUżytkownik
Daniel Dziubecki | użytkownik
Architektura 1301 dni, 1 godzinę, 59 minut temu 79 źrodło rozwiń
We’ve all seen systems that were tightly coupled, and maybe you are working in that kind of system right now. It seems that keeping codebase without high coupling its hard. Because most of the systems ends as not maintainable mess, we just need some time to make it like that. And I want to be clear, I’m not trying blaming any of you because I’ve done the same. But after 60 years from when coupling was invented, I think it’s time to stop chasing the newest technologies and focus on what is causing those p...
Architektura 1360 dni, 1 godzinę, 2 minuty temu 73 źrodło rozwiń
If you want to know : - why I think that distributed systems are like Rocky Balboa. - the difference between Saga, Process Manager and Choreography. Here's my take on that together with the real-world samples.
Programowanie rozproszone 1379 dni, 1 godzinę, 5 minut temu 158 źrodło rozwiń
Myślałeś/aś kiedyś o utworzeniu strumienia z operacji w bazie danych? W tym wpisie dowiesz się czym jest Change Data Capture i jak go wykorzystać planując architekturę naszego systemu. W części praktycznej sprawdzimy działanie Debezium na bazie MySQLSpis treścihide1Co to jest Change Data Capture?Rodzaje Change Data CaptureQuery-BasedLog-Based2Jak mogę to wykorzystać?Zapis do wielu źródełIntegracja baz danychETL i Stream Processing3DebeziumŚrodowiskoKonfiguracja Debezium MySQL w Kafka ConnectDodanie danyc...
Bazy danych i XML 1409 dni, 1 godzinę, 11 minut temu 63 źrodło rozwiń
Kafka Connect to część platformy Apache Kafka. Służy do łączenia Kafki z zewnętrznymi serwisami takimi jak systemy plików lub bazy danych. W artykule dowiesz się jaki problem rozwiązuje i jak ją uruchomić.Spis treścihide1Dlaczego Kafka Connect?2Alternatywy3Konektory4Środowisko5Tryb Standalone – Zapis do pliku6Tryb DistributedGenerowanie danych – Datagen SourceZapis danych – AWS S3 Sink7PodsumowaniePodziel się:Like this:RelatedDlaczego Kafka Connect? Apache Kafka wykorzystywana jest w architekturze mikro...
Jak przetworzyć operacje tylko raz ? Outbox i deduplikacja
Architektura 1507 dni, 2 godziny, 34 minuty temu 124 źrodło rozwiń
Cześć, dziś krótko rzucimy okiem na dosyć “nowy” poziom izolacji transakcji bazodanowej, na który natknąłem się czytając książkę Designing Data-Intensive Applications. Mowa o Snapshot Serializable Isolation. Zacznijmy jednak od przypomnienia, jak działają poziomy izolacji Snapshot i Serializable oraz po co w ogóle istnieją.
Bazy danych i XML 1515 dni, 2 godziny, 5 minut temu 47 źrodło rozwiń
W dzisiejszych czasach wiele firm/deweloperów/architektów decyduje się na rozpraszanie aplikacji. Decyzje te spowodowane są często tym, aby zachęcić specjalistów do dołączenia do firmy i projektu, reklamując ją jako nowoczesną, podążającą za nowoczesnymi rozwiązaniami. Z biznesowego punktu widzenia najprawdopodobniej ma to sens, ponieważ na rynku brakuje specjalistów, a projekt, który na papierze wygląda, że rozwiązuje problemy skali, wydaje się ciekawy i nietrywialny. Oczywiście zdarza się, że rozprosze...
Architektura 1606 dni, 2 godziny, 27 minut temu 102 źrodło rozwiń
It is said that picture is worth a thousand words, and I agree. That’s why I like preparing technical drawings to explain various concepts. So, here it is – a short story of how async/await works in .NET.
Jest to ostatni wpis z serii CI/CD pipeline z użyciem Kubernetesa, AWS, Azure i .NET Core. Dziś postawimy klaster w Azure oraz wypromujemy aplikacje ze środowiska testowego na produkcyjne.
Architektura 1633 dni, 17 minut temu 63 źrodło rozwiń
Jest to drugie podejście Wizualizacja autobusów w Elasticsearch i Kibana. Tym razem wykorzystam napisany wcześniej program w Kafka Streams do obliczenia prędkości i orientacji autobusów, a następnie wrzucę Logstash-em z Apache Kafka do Elasticsearch.Spis treścihide1Środowisko2Data Flow3Wrzucanie rekordów do Apache Kafka4Logstash5Elasticsearch6Kibana7Mapa8Działanie9RepozytoriumPodziel się:Dodaj do ulubionych:PodobneŚrodowisko Docker-compose już trochę puchnie. Znajduje się w nim Elasticsearch, Kibana, Zo...
Bazy danych i XML 1640 dni, 3 godziny, 5 minut temu 66 źrodło rozwiń
Jest to następny wpis z serii CI/CD pipeline z użyciem Kubernetesa, AWS, Azure i .NET Core. Tym razem zepniemy cały flow z poprzednich wpisów i wdrożymy aplikację na klaster testowy.
Architektura 1641 dni, 3 godziny, 20 minut temu 43 źrodło rozwiń
Hej, ze względu na sporo wydarzeń w moim życiu prywatnym nie jestem w stanie pisać regularnie. Jednak na ten moment jest trochę luźniej, także lecimy. Ten wpis jest kolejnym z serii CI/CD pipeline z użyciem Kubernetesa. Dziś zajmiemy się narzędziem o nazwie Octopus Deploy.
Architektura 1648 dni, 2 godziny, 10 minut temu 42 źrodło rozwiń
Cześć. Pisząc następny wpis do serii CI/CD pipeline z użyciem Kubernetesa, AWS, Azure i .NET Core natknąłem się na problem z Octopus Deploy, o którym poinformowałem jego deweloperów tutaj. Został on już naprawiony, jednak w międzyczasie popełniłem ten wpis. Wyskoczmy trochę z "hype trainu" k8s.
Architektura 1732 dni, 1 godzinę, 15 minut temu 82 źrodło rozwiń
Automatyzacja CI/CD pipeline z użyciem Kubernetesa, AWS, Azure i .NET Core – stawianie klastra na AWS Cześć! Zapraszam na nową serię wpisów dotyczącej stworzenia pipeline CI/CD z użyciem Kubernetesa, chmury AWS, Azure i .NET Core. Pierwszy wpis poruszy temat stawiania klastra w chmurze AWS. Przegląd architektury Cały pipeline będzie miał następujący Więcej…
Architektura 1822 dni, 1 godzinę, 16 minut temu 149 źrodło rozwiń
Ostatni wpis zamknął serię związaną z implementacją mikroserwisów jako takich. Jest jednak jeszcze wiele tematów związanych z ich utrzymywaniem i wdrażaniem, które chciałbym sukcesywnie poruszać na blogu. Dziś zaczniemy od moim zdanim kluczowego mechanizmu, bez którego praca z systemem rozproszonym na produkcji może okazać się piekłem. Cym jest rozproszone śledzenie? Wyobraź sobie, że zakończył się etap implementacj...
Programowanie rozproszone 1851 dni, 1 godzinę, 16 minut temu 160 źrodło rozwiń
Cześć! Zapraszam na nową serię wpisów dotyczącej stworzenia pipeline CI/CD z użyciem Kubernetesa, chmury AWS, Azure i .NET Core. Pierwszy wpis poruszy temat stawiania klastra w chmurze AWS.
Architektura 1858 dni, 3 godziny, 17 minut temu 132 źrodło rozwiń
Dziś krótki wpis o automatyzacji tworzenia nowego projektu. Obecnie pracuje w zespole gdzie dosyć często tworzone są nowe projekty. Do tej pory tworzyliśmy zadania w jirze, które polegały właśnie na stworzeniu projektu i repozytorium itp. Stało się to uciążliwe więc zautomatyzowaliśmy ten proces przy pomocy prostego skryptu.
Cześć! Dziś postaram się opowiedzieć trochę o automatyzacji testów integracyjnych przy pomocy dockera. Według klasycznej piramidy testów, testy integracyjne powinny stanowić 20% wszystkich testów. Piramida ta jednak odnosiła się do aplikacji monolitycznych. https://techblog.workiva.com/sites/techblog/files/tech_blogs/engineering-quality-testing-pyramid-tech-blog-k7776-20151019.png...
Uruchamiacie pewnego dnia komputer, patrzycie na dysk i widzicie czerwony pasek? Pełny dysk? We wpisie powiem o tym, jak nowe wersje .NET Core mogą zapychać kompa i co z tym zrobić.