Opis opcji wysokiej dostępności i odzyskiwania po awarii dla wdrożeń PaaS

Ukończone

Usługa PaaS różni się, jeśli chodzi o dostępność; Można skonfigurować tylko opcje zapewniane przez platformę Azure.

W przypadku opcji opartych na programie SQL Server usługi Azure SQL Database i wystąpienia zarządzanego usługi Azure SQL Database opcje to aktywna replikacja geograficzna (tylko usługa Azure SQL Database) i grupy autofailover (usługa Azure SQL Database lub wystąpienie zarządzane usługi Azure SQL Database).

Usługa Azure Database for MySQL ma umowę dotyczącą poziomu usług, która gwarantuje dostępność wersji 99.99, co oznacza, że prawie nie należy napotkać przestojów. W przypadku usługi Azure Database for MySQL, jeśli wystąpi problem na poziomie węzła, taki jak awaria sprzętowa, wbudowany mechanizm trybu failover rozpocznie się. Wszystkie transakcyjne zmiany bazy danych MySQL są zapisywane synchronicznie w magazynie po zatwierdzeniu. Jeśli wystąpi przerwa na poziomie węzła, serwer bazy danych automatycznie utworzy nowy węzeł i dołączy magazyn danych.

Z punktu widzenia aplikacji konieczne będzie kodowanie niezbędnej logiki ponawiania, ponieważ wszystkie połączenia są porzucane w ramach uruchamiania nowego węzła, a wszystkie transakcje lotów zostaną utracone. Ten proces jest uważany za najlepsze rozwiązanie dla każdej aplikacji w chmurze, ponieważ powinien być przeznaczony do obsługi przejściowych błędów.

Usługa Azure Database for PostgreSQL używa modelu podobnego do mySQL w standardowym modelu wdrażania; Jednak usługa Azure PostgreSQL oferuje również skalowane w poziomie rozwiązanie hiperskala o nazwie Citus. Citus zapewnia zarówno skalowanie w poziomie, jak i dodatkową wysoką dostępność dla grupy serwerów. Jeśli ta opcja jest włączona, replika rezerwowa jest skonfigurowana dla każdego węzła grupy serwerów, co również zwiększyłoby koszt, ponieważ podwoiłoby liczbę serwerów w grupie. W przypadku, gdy oryginalny węzeł ma problem, taki jak całkowite brak odpowiedzi lub niepowodzenie, rezerwa ma miejsce. Dane są synchronizowane za pośrednictwem synchronicznej replikacji przesyłania strumieniowego postgreSQL.

Podobnie jak w przypadku usługi Azure Database for MySQL, rozwiązania korzystające z usługi Azure Database for PostgreSQL muszą również obejmować logikę ponawiania prób w aplikacji z powodu porzuconych połączeń i utraty transakcji w locie.

Obie usługi Azure Database for MySQL i PostgreSQL obsługują opcję repliki do odczytu. Oznacza to, że replika może służyć do działań, takich jak raportowanie, aby odciążyć pracę z podstawowej bazy danych. Replika do odczytu zwiększa również dostępność, ponieważ istnieje w innym regionie.