Szybki start: używanie usługi Azure Cache for Redis z aplikacją internetową platformy ASP.NET Core
W tym przewodniku Szybki start uwzględnisz usługę Azure Cache for Redis w aplikacji internetowej platformy ASP.NET Core, która łączy się z usługą Azure Cache for Redis w celu przechowywania i pobierania danych z pamięci podręcznej.
W programie .NET Core istnieją również dostawcy buforowania. Aby szybko rozpocząć korzystanie z usługi Redis z minimalnymi zmianami w istniejącym kodzie, zobacz:
- dostawca podstawowej pamięci podręcznej wyjściowej ASP.NET
- ASP.NET podstawowego dostawcy rozproszonego buforowania
- dostawca sesji usługi Redis ASP.NET core
Przejdź do kodu w usłudze GitHub
Sklonuj https://github.com/Azure-Samples/azure-cache-redis-samples repozytorium GitHub i przejdź do quickstart/aspnet-core
katalogu, aby wyświetlić ukończony kod źródłowy kroków przed nami.
Katalog quickstart/aspnet-core
jest również skonfigurowany jako szablon interfejsu wiersza polecenia dla deweloperów platformy Azure (azd
). Użyj narzędzia open source azd
, aby usprawnić aprowizowanie i wdrażanie z lokalnego środowiska na platformę Azure. Opcjonalnie uruchom azd up
polecenie , aby automatycznie aprowizować wystąpienie usługi Azure Cache for Redis i skonfigurować lokalną przykładową aplikację w celu nawiązania z nim połączenia:
azd up
Eksplorowanie przykładu eShop
W następnym kroku zobaczysz rzeczywisty scenariusz aplikacji eShop demonstrujący dostawców buforowania podstawowego ASP.NET: ASP.NET core eShop przy użyciu dostawców buforowania Redis.
Dostępne funkcje:
- Buforowanie rozproszone usługi Redis
- Dostawca stanu sesji usługi Redis
Instrukcje dotyczące wdrażania znajdują się w README.md.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz jedną bezpłatnie
- Zestaw SDK dla platformy .NET Core
Tworzenie pamięci podręcznej
Aby utworzyć pamięć podręczną, zaloguj się do witryny Azure Portal. W menu portalu wybierz pozycję Utwórz zasób.
W okienku Wprowadzenie wprowadź ciąg Azure Cache for Redis na pasku wyszukiwania. W wynikach wyszukiwania znajdź usługę Azure Cache for Redis, a następnie wybierz pozycję Utwórz.
W okienku Nowa pamięć podręczna Redis Cache na karcie Podstawy skonfiguruj następujące ustawienia dla pamięci podręcznej:
Ustawienie Akcja opis Subskrypcja Wybierz subskrypcję platformy Azure. Subskrypcja do użycia w celu utworzenia nowego wystąpienia usługi Azure Cache for Redis. Grupa zasobów: Wybierz grupę zasobów lub wybierz pozycję Utwórz nową i wprowadź nową nazwę grupy zasobów. Nazwa grupy zasobów, w której ma zostać utworzona pamięć podręczna i inne zasoby. Umieszczając wszystkie zasoby aplikacji w jednej grupie zasobów, można je łatwo zarządzać lub usuwać razem. Nazwa DNS Wprowadź unikatową nazwę. Nazwa pamięci podręcznej musi być ciągiem od 1 do 63 znaków, który zawiera tylko cyfry, litery i łączniki. Nazwa musi zaczynać się i kończyć cyfrą lub literą i nie może zawierać kolejnych łączników. Nazwa hosta wystąpienia pamięci podręcznej to \<DNS name>.redis.cache.windows.net
.Lokalizacja Wybierz lokalizację. Region platformy Azure, który znajduje się w pobliżu innych usług korzystających z pamięci podręcznej. Jednostka SKU pamięci podręcznej Wybierz jednostkę SKU. Jednostka SKU określa rozmiar, wydajność i parametry funkcji, które są dostępne dla pamięci podręcznej. Aby uzyskać więcej informacji, zobacz Omówienie usługi Azure Cache for Redis. Rozmiar pamięci podręcznej Wybierz rozmiar pamięci podręcznej. Aby uzyskać więcej informacji, zobacz Omówienie usługi Azure Cache for Redis. Wybierz kartę Sieć lub wybierz pozycję Dalej: Sieć.
Na karcie Sieć wybierz metodę łączności do użycia dla pamięci podręcznej.
Wybierz kartę Zaawansowane lub wybierz pozycję Dalej: Zaawansowane.
Na karcie Zaawansowane zaznacz pole wyboru Uwierzytelnianie entra firmy Microsoft, aby włączyć uwierzytelnianie firmy Microsoft Entra.
Ważne
W celu uzyskania optymalnego bezpieczeństwa zalecamy użycie identyfikatora Entra firmy Microsoft z tożsamościami zarządzanymi w celu autoryzowania żądań względem pamięci podręcznej, jeśli to możliwe. Autoryzacja przy użyciu identyfikatora Entra firmy Microsoft i tożsamości zarządzanych zapewnia doskonałe zabezpieczenia i łatwość korzystania z autoryzacji klucza dostępu współdzielonego. Aby uzyskać więcej informacji na temat używania tożsamości zarządzanych z pamięcią podręczną, zobacz Use Microsoft Entra ID for cache authentication (Używanie identyfikatora Entra firmy Microsoft do uwierzytelniania w pamięci podręcznej).
(Opcjonalnie) Wybierz kartę Tagi lub wybierz pozycję Dalej: Tagi.
(Opcjonalnie) Na karcie Tagi wprowadź nazwę i wartość tagu, jeśli chcesz podzielić zasób pamięci podręcznej.
Wybierz przycisk Przejrzyj i utwórz.
Na karcie Przeglądanie i tworzenie platforma Azure automatycznie weryfikuje konfigurację.
Po pojawieniu się zielonego komunikatu Weryfikacja przekazana wybierz pozycję Utwórz.
Nowe wdrożenie pamięci podręcznej odbywa się w ciągu kilku minut. Postęp wdrażania można monitorować w okienku Przegląd usługi Azure Cache for Redis. Gdy zostanie wyświetlony stan Uruchomiono, pamięć podręczna jest gotowa do użycia.
Włączanie uwierzytelniania identyfikatora Entra firmy Microsoft w pamięci podręcznej
Jeśli masz pamięć podręczną, sprawdź, czy włączono uwierzytelnianie Firmy Microsoft Entra. Jeśli nie, włącz ją. Zalecamy używanie identyfikatora Entra firmy Microsoft dla Twoich aplikacji.
W witrynie Azure Portal wybierz wystąpienie usługi Azure Cache for Redis, w którym chcesz użyć uwierzytelniania opartego na tokenach firmy Microsoft.
Wybierz pozycję Uwierzytelnianie z menu Zasób.
Sprawdź w okienku roboczym, czy jest zaznaczone pole wyboru Włącz uwierzytelnianie firmy Microsoft Entra. Jeśli tak, możesz przejść dalej.
Wybierz pozycję Włącz uwierzytelnianie firmy Microsoft Entra i wprowadź nazwę prawidłowego użytkownika. Wprowadzony użytkownik jest automatycznie przypisywany zasad dostępu właściciela danych domyślnie po wybraniu pozycji Zapisz. Możesz również wprowadzić tożsamość zarządzaną lub jednostkę usługi, aby nawiązać połączenie z wystąpieniem pamięci podręcznej.
Zostanie wyświetlone okno podręczne z pytaniem, czy chcesz zaktualizować konfigurację, i informuje o tym, że zajmuje to kilka minut. Wybierz opcję Tak.
Ważne
Po zakończeniu operacji włączania węzły w wystąpieniu pamięci podręcznej są ponownie uruchamiane w celu załadowania nowej konfiguracji. Zalecamy wykonanie tej operacji w oknie obsługi lub poza godzinami pracy szczytu. Operacja może potrwać do 30 minut.
Aby uzyskać informacje na temat korzystania z identyfikatora Entra firmy Microsoft z interfejsem wiersza polecenia platformy Azure, zobacz strony referencyjne dotyczące tożsamości.
Dodawanie zasad dostępu do usługi Redis
Musisz przypisać zasady dostępu do danych do tożsamości, która uzyskuje dostęp do usługi Azure Cache for Redis. W tym przykładzie przypisujesz zasady dostępu do danych do tego samego konta identyfikatora Entra firmy Microsoft, którego używasz do logowania się do interfejsu wiersza polecenia platformy Azure lub programu Visual Studio.
Wybierz menu Ustawienia Zasób w pamięci podręcznej i wybierz pozycję Konfiguracja dostępu do danych.
Na stronie Konfiguracja dostępu do danych wybierz pozycję Dodaj > nowego użytkownika usługi Redis w górnej nawigacji.
Na stronie Nowy użytkownik usługi Redis wybierz zasady Współautor danych, a następnie wybierz pozycję Dalej: Użytkownicy usługi Redis.
Wybierz pozycję + Wybierz członka , aby otworzyć menu wysuwane. Wyszukaj konto użytkownika i wybierz je z wyników.
Wybierz pozycję Przejrzyj i przypisz , aby przypisać zasady do wybranego użytkownika.
Dodawanie lokalnego wpisu tajnego dla nazwy hosta
W oknie polecenia wykonaj następujące polecenie, aby zapisać nowy wpis tajny o nazwie RedisHostName po zastąpieniu symboli zastępczych, w tym nawiasów kątowych, dla nazwy pamięci podręcznej i podstawowego klucza dostępu:
dotnet user-secrets set RedisHostName "<cache-name>.redis.cache.windows.net"
W przypadku korzystania z wystąpienia usługi Azure Managed Redis (wersja zapoznawcza) zapisz nowy wpis tajny o nazwie RedisHostName, jak pokazano poniżej:
dotnet user-secrets set RedisHostName "<cache-name>.<region>.redis.azure.net"
Nawiązywanie połączenia z pamięcią podręczną za pomocą programu RedisConnection
Klasa RedisConnection
zarządza połączeniem z pamięcią podręczną. Połączenie jest wykonywane w tej instrukcji w HomeController.cs
folderze Controllers :
_redisConnection = await _redisConnectionFactory;
Klasa RedisConnection.cs
zawiera StackExchange.Redis
przestrzenie nazw i Azure.Identity
w górnej części pliku zawierające podstawowe typy służące do nawiązywania połączenia z usługą Azure Cache for Redis.
using StackExchange.Redis;
using Azure.Identity;
Kod RedisConnection
gwarantuje, że zawsze istnieje dobre połączenie z pamięcią podręczną, zarządzając wystąpieniem ConnectionMultiplexer
z programu StackExchange.Redis
. Klasa RedisConnection
ponownie utworzy połączenie, gdy połączenie zostanie utracone i nie będzie można nawiązać połączenia automatycznie.
Aby uzyskać więcej informacji, zobacz StackExchange.Redis i kod w repozytorium GitHub.
Widoki układu w przykładzie
Układ strony głównej dla tego przykładu jest przechowywany w pliku _Layout.cshtml . Na tej stronie rozpoczniesz rzeczywiste testowanie pamięci podręcznej, klikając test usługi Azure Cache for Redis na tej stronie.
Otwórz plik Views\Shared\_Layout.cshtml.
Powinien zostać wyświetlony w pliku
<div class="navbar-header">
:<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="RedisCache">Azure Cache for Redis Test</a>
Wyświetlanie danych z pamięci podręcznej
Na stronie głównej wybierz pozycję Azure Cache for Redis Test , aby wyświetlić przykładowe dane wyjściowe.
W Eksploratorze rozwiązań rozwiń folder Widoki, a następnie kliknij prawym przyciskiem myszy folder Główny.
Ten kod powinien zostać wyświetlony w pliku RedisCache.cshtml .
@{ ViewBag.Title = "Azure Cache for Redis Test"; } <h2>@ViewBag.Title.</h2> <h3>@ViewBag.Message</h3> <br /><br /> <table border="1" cellpadding="10"> <tr> <th>Command</th> <th>Result</th> </tr> <tr> <td>@ViewBag.command1</td> <td><pre>@ViewBag.command1Result</pre></td> </tr> <tr> <td>@ViewBag.command2</td> <td><pre>@ViewBag.command2Result</pre></td> </tr> <tr> <td>@ViewBag.command3</td> <td><pre>@ViewBag.command3Result</pre></td> </tr> <tr> <td>@ViewBag.command4</td> <td><pre>@ViewBag.command4Result</pre></td> </tr> <tr> <td>@ViewBag.command5</td> <td><pre>@ViewBag.command5Result</pre></td> </tr> </table>
Lokalne uruchamianie aplikacji
Aby utworzyć aplikację, uruchom w oknie polecenia następujące polecenie:
dotnet build
Następnie uruchom aplikację za pomocą następującego polecenia:
dotnet run
Przejdź do
https://localhost:5001
w przeglądarce internetowej.Wybierz pozycję Azure Cache for Redis Test na pasku nawigacyjnym strony internetowej, aby przetestować dostęp do pamięci podręcznej.
Czyszczenie zasobów
Jeśli chcesz nadal korzystać z zasobów utworzonych w tym artykule, zachowaj grupę zasobów.
W przeciwnym razie, jeśli skończysz z zasobami, możesz usunąć utworzoną grupę zasobów platformy Azure, aby uniknąć naliczania opłat.
Ważne
Usunięcie grupy zasobów jest nieodwracalne. Jeśli usuniesz grupę zasobów, wszystkie zawarte w niej zasoby zostaną trwale usunięte. Uważaj, aby nie usunąć przypadkowo niewłaściwych zasobów lub grupy zasobów. Jeśli zasoby zostały utworzone w istniejącej grupie zasobów zawierającej zasoby, które chcesz zachować, możesz usunąć każdy zasób indywidualnie zamiast usuwać grupę zasobów.
Aby usunąć grupę zasobów
Zaloguj się do witryny Azure Portal, a następnie wybierz pozycję Grupy zasobów.
Wybierz grupę zasobów, którą chcesz usunąć.
Jeśli istnieje wiele grup zasobów, użyj pola Filtruj dla dowolnego pola... wpisz nazwę grupy zasobów utworzonej dla tego artykułu. Wybierz grupę zasobów na liście wyników.
Wybierz pozycję Usuń grupę zasobów.
Zobaczysz prośbę o potwierdzenie usunięcia grupy zasobów. Wpisz nazwę grupy zasobów w celu potwierdzenia, a następnie wybierz pozycję Usuń.
Po krótkim czasie grupa zasobów i wszystkie jej zasoby zostaną usunięte.