Rozproszone systemy mają duże zalety i są zasadne, ale przynoszą też zupełnie nowy wachlarz wyzwań, takich jak np. kolejność wiadomości. Jak sobie z tym poradzić - oto refleksje.

#DistributedSystems #architekturaOprogramowania #programowanie

https://devszczepaniak.pl/kolejnosc-wiadomosci-w-systemach-rozproszonych/

Kolejność wiadomości w systemach rozproszonych - devszczepaniak.pl

Kolejność wiadomości obok exactly-once delivery to największy problem systemów rozproszonych. Poznaj analizę problemu i jego rozwiązania.

devszczepaniak.pl

W przypadku, kiedy system składa się z mikroserwisów lub generalnie wielu fragmentów backendu, zasadne może być podzielenie bazy na mniejsze części. Ma to sens, ale co z uproszczeniem sobie sprawy i posiadaniem jednej bazy? Otóż, to niekoniecznie musi być dobry ruch.

#SharedDatabase #architekturaOprogramowania #SoftwareEngineering

https://devszczepaniak.pl/antywzorzec-shared-database/

Antywzorzec shared database - devszczepaniak.pl

Sharing is caring... to nie zawsze jest prawda. Shared database uznawany jest za antywzorzec. Z tego artykułu dowiesz się dlaczego.

devszczepaniak.pl

Słów kilka (a nawet kilkaset) o tym, jak stworzyć architekturę opartą o zdarzenia w #PHP. Dość rozbudowany tutorial.

#programowanie #ArchitekturaOprogramowania

https://dev.to/dgafka/implementing-event-driven-architecture-in-php-27ho

Implementing Event-Driven Architecture in PHP

Traditional service integration moves routing logic outside the application’s code. Message brokers,...

DEV Community

Koncepcje #ADR oraz #RFC nie są obce inżynierom oprogramowania i programistom, ale mimo to nie są tak często stosowane jak powinny. A tutaj macie bardzo dobry i przyjemny opis tych dwóch podobnych, ale jednak innych technik. Warto przeczytać.

#programowanie #architekturaOprogramowania

https://devszczepaniak.pl/dokumentowanie-decyzji-projektowych-o-adr-i-rfc/

Dokumentowanie decyzji projektowych - o ADR i RFC - devszczepaniak.pl

ADR i RFC to dokumenty pomagające budować log decyzji projektowych. Artykuł pokażę Ci ich wartość i dlaczego widać ją szczególnie po czasie.

devszczepaniak.pl

Długa, ale bardzo "pożywna" prezentacja i transkrypcja z niej o tym, co to tak naprawdę oznacza bycia architektem oprogramowania. Bo wbrew pozorom nie wymaga to dbania o każdy szczególik kodu, ale też pociąga za sobą bardzo dobrą umiejętność komunikacji.

#programowanie #architekturaOprogramowania

https://www.infoq.com/presentations/architecture-best-practices/

Thinking Like an Architect

Gregor Hohpe explains that effective architects make others smarter. He shares strategies for using metaphors and models to drive alignment, overcome resistance, and build resilient systems.

InfoQ

Czy można poradzić sobie z problemem zbyt wielu jednoczesnych żądań do naszej usługi webowej? Czasem można, a przynajmniej można ułatwić życie naszej infrastrukturze poprzez odpowiednie techniki, które autor przedstawia w tym artykule. Nie zawsze są one wygodne lub możliwe w zastosowaniu, ale warto je znać.

#ArchitekturaOprogramowania #programowanie

https://newsletter.scalablethread.com/p/how-to-keep-services-running-during

How to Keep Services Running During Failures?

Strategies for Graceful Degradation in Large Scale Distributed Systems

The Scalable Thread

Krótki materiał omawiający, jak zbudowane są lub mogą być systemy typu #Dropbox, a więc miejsca do składowania wielu plików. Można znaleźć tutaj parę przydatnych informacji i inspiracji.

#programowanie #architekturaOprogramowania

https://www.youtube.com/watch?v=a3MF4ku2tig

Dropbox - Architektura Systemu

YouTube

Osoby techniczne czasem mają jedną wadę - niespecjalne zdolności pozwalające przedstawić ładny diagram architektury. Na szczęście, są ludzie, którzy to rozumieją i proponują takie narzędzia jak FossFLOW.

#ArchitekturaOprogramowania #SoftwareEngineering #SoftwareArchitecture

https://github.com/stan-smith/FossFLOW

GitHub - stan-smith/FossFLOW: Make beautiful isometric infrastructure diagrams

Make beautiful isometric infrastructure diagrams. Contribute to stan-smith/FossFLOW development by creating an account on GitHub.

GitHub

Dla niektórych ten film będzie oczywisty, ale warto obejrzeć, bo w treściwej formie autor opowiada o multitenantowości, czyli posiadaniu danych wielu klientów/grup/organizacji w bazie danych. No właśnie - jednej czy kilku?

#SoftwareArchitecture #ArchitekturaOprogramowania #programowanie

https://www.youtube.com/watch?v=Ph4QhHGgQi0

Architektura wielotenantowa (Multitenancy)

YouTube

SQLite może być świetny w dużej skali. Zdziwieni? Czy faktycznie system zarządzania bazami danych kojarzący się z malutkimi, prostymi aplikacjami ma szansę zaistnieć w większych przedsięwzięciach? Warto zapoznać się z tym tekstem.

#SQLite #skalowanie #ArchitekturaOprogramowania

https://rivet.gg/blog/2025-02-16-sqlite-on-the-server-is-misunderstood

SQLite-on-the-Server Is Misunderstood: Better At Hyper-Scale Than Micro-Scale

We're Rivet, a new open-source, self-hostable serverless platform. We've been in the weeds with SQLite-on-the-server recently and – boy – do we have a lot of thoughts to share. Give us a star on GitHub, we'll be sharing a lot more about SQLite soon!