Udostępnij za pośrednictwem


Konfiguracja wielodostępności i aplikacja systemu Azure

aplikacja systemu Azure Configuration umożliwia przechowywanie ustawień konfiguracji aplikacji. Korzystając z aplikacja systemu Azure Configuration, można łatwo zaimplementować wzorzec zewnętrznego magazynu konfiguracji. W tym artykule opisano niektóre funkcje konfiguracji aplikacja systemu Azure, które są przydatne podczas pracy z systemami wielodostępnymi, oraz linki do wskazówek i przykładów dotyczących używania konfiguracji aplikacja systemu Azure w rozwiązaniu wielodostępnym.

Modele izolacji

Magazyn odnosi się do pojedynczego wystąpienia usługi konfiguracji aplikacja systemu Azure.

W rozwiązaniu wielodostępnym często używane są ustawienia współużytkujące wiele dzierżaw, takie jak ustawienia globalne lub ustawienia, które mają zastosowanie do wszystkich dzierżaw w ramach sygnatury wdrożenia. Ustawienia globalne są często najlepiej przechowywane w udostępnionym magazynie usługi App Configuration. Stosując to podejście, można zminimalizować liczbę miejsc, które należy zaktualizować, gdy wartość ustawienia ulegnie zmianie. Takie podejście minimalizuje również ryzyko, że ustawienia mogą nie być zsynchronizowane.

Często dostępne są również ustawienia specyficzne dla dzierżawy. Na przykład może być konieczne przechowywanie nazwy bazy danych każdej dzierżawy lub identyfikatorów wewnętrznych. Możesz też określić różne poziomy dzienników dla każdej dzierżawy, na przykład podczas diagnozowania problemu zgłoszonego przez określoną dzierżawę i należy zebrać dzienniki diagnostyczne z tej dzierżawy. Możesz wybrać, czy chcesz połączyć ustawienia specyficzne dla dzierżawy dla wielu dzierżaw w jeden magazyn, czy wdrożyć magazyn dla każdej dzierżawy. Ta decyzja powinna być oparta na wymaganiach. Jeśli rozwiązanie korzysta z jednej współużytkowanej warstwy aplikacji dla wielu dzierżaw, prawdopodobnie będzie to minimalna korzyść w przypadku korzystania z magazynów specyficznych dla dzierżawy. Jednak w przypadku wdrażania wystąpień aplikacji specyficznych dla dzierżawy możesz wybrać dublowanie tego samego podejścia, wdrażając magazyny konfiguracji specyficzne dla dzierżawy.

W poniższej tabeli przedstawiono podsumowanie różnic między głównymi modelami izolacji dzierżawy dla usługi aplikacja systemu Azure Configuration:

Kwestie wymagające rozważenia Magazyn udostępniony Przechowywanie na dzierżawę
Izolacja danych Niski. Identyfikowanie danych każdej dzierżawy przy użyciu prefiksów kluczy lub etykiet Wys.
Izolacja wydajności Niskie Wysokie
Złożoność wdrożenia Niski Średnio-wysoki
Złożoność operacyjna Niski Średnio-wysoki
Koszt zasobu Niski Średnio-wysoki
Przykładowy scenariusz Duże rozwiązanie wielodostępne z udostępnioną warstwą aplikacji Dzierżawy w warstwie Premium z w pełni izolowanymi wdrożeniami

Magazyny udostępnione

Możesz wdrożyć udostępniony magazyn konfiguracji aplikacja systemu Azure dla całego rozwiązania lub dla każdego sygnatury. Następnie można użyć tego samego magazynu dla wszystkich ustawień dzierżawy i można je rozróżnić za pomocą prefiksów kluczy lub etykiet .

Jeśli musisz przechowywać dużą ilość danych na dzierżawę lub jeśli musisz przeprowadzić skalowanie do dużej liczby dzierżaw, może to spowodować przekroczenie limitów zasobów dla pojedynczego magazynu. W tym scenariuszu należy rozważyć, czy dzierżawy można podzielić na fragmenty w zestawie magazynów udostępnionych, aby zminimalizować koszty wdrażania i zarządzania.

Jeśli zastosujesz to podejście, upewnij się, że rozumiesz limity przydziału zasobów i limity , które mają zastosowanie. W szczególności należy pamiętać o całkowitym limicie magazynu dla używanej warstwy usługi i upewnić się, że nie przekroczysz maksymalnej liczby żądań na godzinę.

Magazyny na dzierżawę

Zamiast tego możesz wybrać wdrożenie magazynu konfiguracji aplikacja systemu Azure dla każdej dzierżawy. Warstwa Standardowa aplikacja systemu Azure Configuration umożliwia wdrażanie nieograniczonej liczby magazynów w ramach subskrypcji. Jednak takie podejście jest często bardziej złożone do zarządzania, ponieważ trzeba wdrożyć i skonfigurować więcej zasobów. Za każdy wdrożony zasób magazynu są również naliczane opłaty.

Rozważ magazyny specyficzne dla dzierżawy, jeśli masz jedną z następujących sytuacji:

  • Należy użyć kluczy szyfrowania zarządzanych przez klienta, gdzie klucze są oddzielne dla każdej dzierżawy.
  • Dzierżawy wymagają, aby dane konfiguracji były całkowicie odizolowane od danych innych dzierżaw. Uprawnienia dostępu do aplikacja systemu Azure Configuration są kontrolowane na poziomie magazynu, dlatego wdrażając oddzielne magazyny, można skonfigurować oddzielne uprawnienia dostępu.

Funkcje konfiguracji aplikacja systemu Azure, które obsługują wielodostępność

W przypadku używania aplikacja systemu Azure Configuration w aplikacji wielodostępnej istnieje kilka funkcji, których można użyć do przechowywania i pobierania ustawień specyficznych dla dzierżawy.

Prefiksy kluczy

W aplikacja systemu Azure Configuration pracujesz z parami klucz-wartość, które reprezentują ustawienia aplikacji. Klucz reprezentuje nazwę ustawienia konfiguracji. Dla kluczy można użyć hierarchicznej struktury nazewnictwa. W rozwiązaniu wielodostępnym rozważ użycie identyfikatora dzierżawy jako prefiksu kluczy.

Załóżmy na przykład, że musisz przechowywać ustawienie, aby wskazać poziom rejestrowania aplikacji. W rozwiązaniu z jedną dzierżawą możesz nazwać to ustawienie LogLevel. W rozwiązaniu wielodostępnym możesz użyć hierarchicznej nazwy klucza, na przykład tenant1/LogLevel dla dzierżawy 1, tenant2/LogLevel dzierżawy 2 itd.

aplikacja systemu Azure Configuration umożliwia określenie długich nazw kluczy w celu obsługi wielu poziomów w hierarchii. Jeśli zdecydujesz się używać długich nazw kluczy, upewnij się, że rozumiesz limity rozmiaru kluczy i wartości.

Podczas ładowania konfiguracji pojedynczej dzierżawy do aplikacji można określić filtr prefiksu klucza, aby załadować tylko klucze tej dzierżawy. Możesz również skonfigurować bibliotekę dostawcy dla aplikacja systemu Azure Configuration w celu przycinania prefiksu klucza z kluczy, zanim udostępni je aplikacji. Po przycięciu prefiksu klucza aplikacja zobaczy spójną nazwę klucza z wartościami załadowanymi do aplikacji przez tę dzierżawę.

Etykiety

aplikacja systemu Azure Configuration obsługuje również etykiety, które umożliwiają posiadanie oddzielnych wartości z tym samym kluczem.

Etykiety są często używane do przechowywania wersji, pracy z wieloma środowiskami wdrażania lub do innych celów w rozwiązaniu. Chociaż można używać identyfikatorów dzierżaw jako etykiet, nie będzie można używać etykiet dla innych elementów. Dlatego często dobrym rozwiązaniem jest użycie prefiksów kluczy zamiast etykiet podczas pracy z rozwiązaniem wielodostępnym.

Jeśli zdecydujesz się używać etykiet dla każdej dzierżawy, aplikacja może załadować tylko ustawienia dla określonej dzierżawy przy użyciu filtru etykiet. Takie podejście może być przydatne, jeśli masz oddzielne wdrożenia aplikacji dla każdej dzierżawy.

Buforowanie po stronie aplikacji

Podczas pracy z usługą aplikacja systemu Azure Configuration ważne jest buforowanie ustawień w aplikacji zamiast ładowania ich za każdym razem, gdy są używane. Ustawienia pamięci podręcznej bibliotek dostawcy aplikacja systemu Azure Configuration i odświeżać je automatycznie.

Należy również zdecydować, czy aplikacja ładuje ustawienia dla jednej dzierżawy, czy dla wszystkich dzierżaw.

Wraz ze wzrostem bazy dzierżawy ilość czasu i ilość pamięci wymaganej do załadowania ustawień dla wszystkich dzierżaw prawdopodobnie wzrośnie. Dlatego w większości sytuacji dobrym rozwiązaniem jest załadowanie ustawień dla każdej dzierżawy oddzielnie, gdy aplikacja ich potrzebuje.

Jeśli ładujesz oddzielnie ustawienia konfiguracji każdej dzierżawy, aplikacja musi buforować każdy zestaw ustawień oddzielnie do innych. W aplikacjach platformy .NET rozważ użycie pamięci podręcznej w pamięci w celu buforowania obiektu IConfiguration dzierżawy, a następnie użycia identyfikatora dzierżawy jako klucza pamięci podręcznej. Korzystając z pamięci podręcznej w pamięci, nie trzeba ponownie ładować konfiguracji na każde żądanie, ale pamięć podręczna może usunąć nieużywane wystąpienia, jeśli aplikacja jest pod presją pamięci. Można również skonfigurować czas wygaśnięcia dla ustawień konfiguracji każdej dzierżawy.

Współautorzy

Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.

Główny autor:

Inni współautorzy:

  • Arsen Vladimirskiy | Główny inżynier klienta, fasttrack dla platformy Azure
  • Zhenlan Wang | Główny menedżer inżynierii oprogramowania, konfiguracja aplikacja systemu Azure

Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.

Następne kroki

Przejrzyj metody wdrażania i konfiguracji pod kątem wielodostępności.