Czy wiesz jak łatwo zwiększyć odporność systemu IT?
Dzisiaj trochę mniej poważnie na poważny temat. Otóż jak się ma architektura do Covida, czyli jak powinniśmy zaprojektować nasz system na wypadek epidemii. Teoretycznie tematy nie są ze sobą powiązane, ale jednak nasze aplikacje również powinny być odporne na pewne zagrożenia i zabezpieczone na wypadek zdarzeń losowych. Na szczęście dla architektów mamy już wypracowane podejścia do tematu odporności systemów. Po pierwsze to izolacja zasobów od siebie. Można to nazwać dystansem społecznym, ale fachowo jest to wzorzec projektowy Bulkhead. W przypadku awarii jednego z zasobów pozwala działać reszcie systemu. Sposobów realizacji tego wzorca jest wiele i są zależne od tego, na jakim poziomie go zastosujemy. |
Jako pierwsza myśl, jaka zapewne Ci przyszła na myśl to mikroserwisy. Oczywiście. Można również do tego użyć podstawowej zalety działania chmury, czyli regiony i strefy dostępności. W zastosowaniu izolacji zasobów można wykorzystać Kubernetes i Dockera. Po drugie, gdy nasz zasób ulegnie już jednak zakażeniu (fachowo awarii), to istotnym działaniem jest kwarantanna. I tutaj też mamy analogię, bo jeśli przestanie działać jeden w nodów, mikroserwisów czy innych zasobów, to system powinien na pewien czas dać mu spokój, pozwolić na jego naprawę i regenerację. Mamy tu do czynienia z oczywistym przypadkiem potrzeby zastosowania wzorca Circuit Breaker. Po trzecie, co jest istotne w odporności naszych systemu, a kiepsko z tym w Polskiej rzeczywistości, to monitorowanie zasobów. Wyobraźmy sobie, jak szybko pozbylibyśmy się wszelkich ognisk epidemii, gdyby można było monitorować stan zdrowia tak jak w systemach informatycznych. Nasze zasoby możemy pingować co pięć minut i od razu mamy wynik, czy działa, czy nie. Oczywiście istnieje na to wzorzec projektowy o nazwie Health Endpoint Monitoring. Istnieje jeszcze kilka wzorców projektowych zwiększających odporność naszego systemu informatycznego, typu Kolejki, Transakcje, Systemy Rozproszone i tego typu rzeczy. Jeśli chcesz, żebym napisał coś więcej lub bardziej szczegółowo, to odpisz mi na tego maila. A tym czasu pozdrawiam i trzymaj się zdrowo. |