Gyorsútmutató: Az Azure Cache for Redis használata ASP.NET-webalkalmazással
Ebben a rövid útmutatóban a Visual Studio 2019 használatával módosít egy ASP.NET webalkalmazást, amely az Azure Cache for Redishez csatlakozik az adatok gyorsítótárból való tárolásához és lekéréséhez. Ezután üzembe helyezi az alkalmazást a Azure-alkalmazás Szolgáltatásban.
Ugrás a kódra
Ez a cikk azt ismerteti, hogyan módosíthatja egy mintaalkalmazás kódját egy működő alkalmazás létrehozásához, amely csatlakozik az Azure Cache for Redishez.
Ha közvetlenül a mintakódra szeretne lépni, tekintse meg a GitHub ASP.NET rövid útmutatóját .
Előfeltételek
- Azure-előfizetés. Hozzon létre egyet ingyen
- A Visual Studio 2019 ASP.NET és webfejlesztési és Azure-fejlesztési számítási feladatokkal.
Gyorsítótár létrehozása
Ezután hozza létre az alkalmazáshoz használni kívánt gyorsítótárat.
Gyorsítótár létrehozásához jelentkezzen be az Azure Portalra. A portál menüjében válassza az Erőforrás létrehozása lehetőséget.
Az Első lépések panelen írja be az Azure Cache for Redist a keresősávba. A keresési eredmények között keresse meg az Azure Cache for Redist, majd válassza a Létrehozás lehetőséget.
Az Új Redis Cache panel Alapszintű beállítások lapján konfigurálja a következő beállításokat a gyorsítótárhoz:
Beállítás Művelet Leírás Előfizetés Válassza ki az Azure-előfizetését. Az Azure Cache for Redis új példányának létrehozásához használandó előfizetés. Erőforráscsoport Jelöljön ki egy erőforráscsoportot, vagy válassza az Új létrehozása lehetőséget, és adjon meg egy új erőforráscsoportnevet. Annak az erőforráscsoportnak a neve, amelyben létre szeretné hozni a gyorsítótárat és más erőforrásokat. Ha az összes alkalmazás-erőforrást egy erőforráscsoportba helyezi, egyszerűen kezelheti vagy törölheti őket. DNS-név Adjon meg egy egyedi nevet. A gyorsítótár nevének 1–63 karakterből álló sztringnek kell lennie, amely csak számokat, betűket és kötőjeleket tartalmaz. A névnek számmal vagy betűvel kell kezdődnie és végződnie, és nem tartalmazhat egymást követő kötőjeleket. A gyorsítótárpéldány gazdagépneve . \<DNS name>.redis.cache.windows.net
Helyen Válasszon ki egy helyet. Olyan Azure-régió , amely a gyorsítótárat használó egyéb szolgáltatások közelében található. Gyorsítótár termékváltozata Válasszon egy termékváltozatot. Az termékváltozat határozza meg a gyorsítótár számára elérhető méretet, teljesítményt és funkcióparamétereket. További információ: Azure Cache for Redis – áttekintés. Gyorsítótár mérete Válasszon egy gyorsítótárméretet. További információ: Azure Cache for Redis – áttekintés. Válassza a Hálózatkezelés lapot, vagy válassza a Tovább: Hálózatkezelés lehetőséget.
A Hálózatkezelés lapon válassza ki a gyorsítótárhoz használni kívánt kapcsolati módszert.
Válassza a Speciális lapot, vagy válassza a Tovább: Speciális lehetőséget.
A Speciális panelen ellenőrizze vagy válassza ki a hitelesítési módszert az alábbi információk alapján:
- Alapértelmezés szerint egy új alapszintű, standard vagy prémium szintű gyorsítótár esetében a Microsoft Entra-hitelesítés engedélyezve van, és a hozzáférési kulcsok hitelesítése le van tiltva.
- Alapszintű vagy standard gyorsítótárak esetén kiválaszthatja a nem TLS-portok kiválasztását.
- Standard és Prémium szintű gyorsítótárak esetén engedélyezheti a rendelkezésre állási zónákat. A gyorsítótár létrehozása után nem tilthatja le a rendelkezésre állási zónákat.
- Prémium szintű gyorsítótár esetén konfigurálja a nem TLS-port, a fürtözés, a felügyelt identitás és az adatmegőrzés beállításait.
Fontos
Az optimális biztonság érdekében azt javasoljuk, hogy a Microsoft Entra ID-t felügyelt identitásokkal használva engedélyezze a kéréseket a gyorsítótáron, ha lehetséges. A Microsoft Entra-azonosító és a felügyelt identitások használatával történő engedélyezés kiváló biztonságot és egyszerű használatot biztosít a megosztott hozzáférési kulcsok engedélyezésével szemben. A felügyelt identitások gyorsítótárral való használatáról további információt a Microsoft Entra ID használata gyorsítótár-hitelesítéshez című témakörben talál.
(Nem kötelező) Válassza a Címkék lapot, vagy válassza a Tovább: Címkék lehetőséget.
(Nem kötelező) A Címkék lapon adja meg a címke nevét és értékét, ha kategorizálni szeretné a gyorsítótár-erőforrást.
Válassza az Áttekintés + létrehozás lehetőséget.
A Felülvizsgálat + létrehozás lapon az Azure automatikusan ellenőrzi a konfigurációt.
A zöld érvényesítési üzenet megjelenése után válassza a Létrehozás lehetőséget.
Az új gyorsítótár üzembe helyezése több perc alatt megtörténik. Az üzembe helyezés előrehaladását az Azure Cache for Redis Áttekintés panelen követheti nyomon. Amikor az állapot a Futtatás állapotot jeleníti meg, a gyorsítótár készen áll a használatra.
A gazdagép nevének, portjának és hozzáférési kulcsának lekérése
Az Azure Cache for Redis-kiszolgálóhoz való csatlakozáshoz a gyorsítótár-ügyfélnek szüksége van a gyorsítótár gazdanevére, portjára és hozzáférési kulcsára. Egyes ügyfelek kissé eltérő nevek használatával hivatkozhatnak ezekre az elemekre. A gazdagép nevét, portját és kulcsait az Azure Portalon szerezheti be.
Hozzáférési kulcs lekérése a gyorsítótárhoz:
- Az Azure Portalon nyissa meg a gyorsítótárat.
- A szolgáltatás menü Beállítások területén válassza a Hitelesítés lehetőséget.
- A Hitelesítés panelen válassza az Access-kulcsok lapot.
- A hozzáférési kulcs értékének másolásához válassza a Másolás ikont a kulcsmezőben.
A gyorsítótár gazdagépnevének és portjának lekérése:
- Az Azure Portalon nyissa meg a gyorsítótárat.
- A szolgáltatás menüjében válassza az Áttekintés lehetőséget.
- A Gazdagép neve területen válassza a Másolás ikont a gazdagépnév értékének másolásához. A gazdagépnév értéke az űrlap
<DNS name>.redis.cache.windows.net
. - Portok esetén válassza a Másolás ikont a portértékek másolásához.
A CacheSecrets.config fájl szerkesztése
A számítógépen hozzon létre egy CacheSecrets.config nevű fájlt. Helyezze a fájlt olyan helyre, ahol nincs bejelentkezve a mintaalkalmazás forráskódjával. Ebben a rövid útmutatóban a CacheSecrets.config fájl a C:\AppSecrets\ mappában található.
Szerkessze a CacheSecrets.config fájlt a következő tartalom hozzáadásához.
A kódban:
A
<cache-name>
karakterláncot cserélje le a gyorsítótár gazdagépének nevére.Cserélje le
<access-key>
a gyorsítótár elsődleges hozzáférési kulcsára.Tipp.
A másodlagos hozzáférési kulcsot a kulcscsere során használhatja alternatív kulcsként, amíg Ön újragenerálja az elsődleges hozzáférési kulcsot.
<appSettings> <add key="CacheConnection" value="<cache-name>.redis.cache.windows.net,abortConnect=false,ssl=true,allowAdmin=true,password=<access-key>"/> </appSettings>
Mentse a fájlt.
Az MVC alkalmazás frissítése
Ebben a szakaszban egy modellnézet-vezérlő (MVC) alkalmazás egy egyszerű tesztet jelenít meg az Azure Cache for Redishez való kapcsolathoz.
A web.config fájl csatlakoztatása a gyorsítótárhoz
Amikor helyileg futtatja az alkalmazást, a CacheSecrets.config adataival csatlakozhat az Azure Cache for Redis-példányhoz. Később üzembe helyezheti ezt az alkalmazást az Azure-ban. Ekkor konfigurálhat egy alkalmazásbeállítást az Azure-ban, amelyet az alkalmazás a gyorsítótár kapcsolati adatainak lekérésére használ a konfigurációs fájl használata helyett.
Mivel a CacheSecrets.config fájl nincs üzembe helyezve az Azure-ban az alkalmazással együtt, csak akkor használja, ha helyileg teszteli az alkalmazást. Őrizze meg ezeket az információkat a lehető legvédettségosabban, hogy megakadályozza a gyorsítótáradatokhoz való rosszindulatú hozzáférést.
A web.config fájl frissítése
A Megoldáskezelő nyissa meg a web.config fájlt.
A web.config fájlban állítsa be az
<appSettings>
elemet az alkalmazás helyi futtatására:<appSettings file="C:\AppSecrets\CacheSecrets.config">
Az ASP.NET futtatási környezet a külső fájl tartalmát egyesíti az <appSettings>
elem kódjával. Ha a megadott fájl nem található, a futtatási környezet figyelmen kívül hagyja a fájlattribútumot. A titkos kulcsok (a gyorsítótárhoz tartozó kapcsolati sztringek) nem képezik részét az alkalmazás forráskódjának. Amikor üzembe helyezi a webalkalmazást az Azure-ban, a CacheSecrets.config fájl nincs üzembe helyezve.
A StackExchange.Redis telepítése
A megoldáshoz a StackExchange.Redis
csomag futtatására van szükség.
A StackExchange.Redis
csomag telepítése:
Ha konfigurálni szeretné az alkalmazást a Visual Studio StackExchange.Redis NuGet-csomagjának használatára, válassza a Tools>NuGet Csomagkezelő> Csomagkezelő Console lehetőséget.
A Csomagkezelő konzolablakban futtassa a következő parancsot:
Install-Package StackExchange.Redis
A NuGet-csomag letölti és hozzáadja az ügyfélalkalmazáshoz szükséges szerelvényhivatkozásokat az Azure Cache for Redis ügyfélalkalmazással StackExchange.Redis
való eléréséhez.
Csatlakozás a gyorsítótárhoz a RedisConnection használatával
A gyorsítótárhoz való kapcsolatot az RedisConnection
osztály kezeli. A kapcsolat először a ContosoTeamStats/Controllers/HomeController.cs utasításban jön létre:
private static Task<RedisConnection> _redisConnectionFactory = RedisConnection.InitializeAsync(connectionString: ConfigurationManager.AppSettings["CacheConnection"].ToString()););
A titkos kód értéke a CacheConnection
Secret Manager konfigurációszolgáltatójának használatával érhető el, és jelszóparaméterként használatos.
A RedisConnection.cs láthatja, hogy a StackExchange.Redis névtér hozzá van adva a kódhoz. Az RedisConnection
osztálynak szüksége van a névtérre.
using StackExchange.Redis;
A RedisConnection
kód biztosítja, hogy mindig kifogástalan kapcsolat legyen a gyorsítótárral. A kapcsolat kezelése a ConnectionMultiplexer
StackExchange.Redis példányán keresztül történik. Az RedisConnection
osztály újra létrehozza a kapcsolatot, ha megszakad egy kapcsolat, és nem tud automatikusan újracsatlakozni.
További információ: StackExchange.Redis és a GitHub-adattár kódja.
Elrendezési nézetek ellenőrzése a mintában
A minta kezdőlapjának elrendezése a _Layout.cshtml fájlban található. Ezen a lapon az Azure Cache for Redis Test kiválasztásával indíthatja el a tényleges gyorsítótár-tesztelést.
A Megoldáskezelő válassza a Nézetek lehetőséget, majd kattintson a jobb gombbal a Megosztott mappára. Ezután nyissa meg a _Layout.cshtml fájlt.
Ellenőrizze, hogy a következő sor van-e a következőben
<div class="navbar-header">
:@Html.ActionLink("Azure Cache for Redis Test", "RedisCache", "Home", new { area = "" }, new { @class = "navbar-brand" })
Adatok megjelenítése a gyorsítótárból
A kezdőlapon válassza az Azure Cache for Redis Test lehetőséget a navigációs sávon a mintakimenet megtekintéséhez.
A Megoldáskezelő válassza a Nézetek lehetőséget, majd kattintson a jobb gombbal a Kezdőlap mappára.
Ellenőrizze, hogy a következő kód szerepel-e a RedisCache.cshtml fájlban:
@{ 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>
Az alkalmazás futtatása helyben
Alapértelmezés szerint a projekt úgy van konfigurálva, hogy helyben üzemeltesse az alkalmazást az IIS Expressben a teszteléshez és a hibakereséshez.
Az alkalmazás helyi futtatása:
A Visual Studióban válassza a Debug (Hibakeresés) >Start Debugging (Hibakeresés indítása) elemet az alkalmazás teszteléshez és hibakereséshez való létrehozásához és helyi elindításához.
A böngészőben válassza az Azure Cache for Redis Test lehetőséget a navigációs sávon.
Az alábbi példában a
Message
kulcs korábban gyorsítótárazott értékkel rendelkezett, amelyet a portálOn az Azure Cache for Redis konzollal állított be. Az alkalmazás frissítette ezt a gyorsítótárazott értéket. Az alkalmazás továbbá végrehajtotta aPING
és aCLIENT LIST
parancsot.
Közzététel és futtatás az Azure-ban
Az alkalmazás sikeres helyi tesztelése után az Azure-beli üzembe helyezés és a felhőben történő futtatás következik.
Az alkalmazás közzététele az Azure-ban:
A Visual Studióban a Megoldáskezelő kattintson a jobb gombbal a projektcsomópontra, és válassza a Közzététel lehetőséget.
Válassza a Microsoft Azure-alkalmazás Service Create New Publish (Új>közzététel létrehozása) lehetőséget.>
A Create App Service (App Service létrehozása) párbeszédpanelen hajtsa végre a következő módosításokat:
Beállítás Művelet Leírás Alkalmazás neve Használja az alapértelmezettet. Az alkalmazásnév lesz az alkalmazás gazdagépneve, amikor üzembe helyezi az Azure-ban. Előfordulhat, hogy a névhez időbélyeg-utótagot ad hozzá, hogy egyedi legyen az alkalmazás neve. Előfizetés Válassza ki az Azure-előfizetését. A kapcsolódó üzemeltetési költségek ennél az előfizetésnél lesznek felszámítva. Ha több Azure-előfizetéssel rendelkezik, ellenőrizze, hogy a használni kívánt előfizetés van-e kiválasztva. Erőforráscsoport Használja ugyanazt az erőforráscsoportot, amelyet a gyorsítótár létrehozásához használt (például TestResourceGroup). Az erőforráscsoport segítségével az összes erőforrást egy csoportként kezelheti. Később, amikor törölni szeretné az alkalmazást, törölheti az erőforráscsoportot az összes kapcsolódó erőforrás törléséhez. App Service-csomag Válassza az Új elemet, és hozzon létre egy TestingPlan nevű új App Service-csomagot.
Használja ugyanazt az értéket a helyhez, amelyet a gyorsítótár létrehozásakor használt.
Méret esetén válassza az Ingyenes lehetőséget.Az App Service-csomag meghatároz egy futtatáshoz használható számításierőforrás-készletet a webalkalmazás számára. Az App Service-gazdagép beállításainak konfigurálása után válassza a Létrehozás lehetőséget.
A Kimenet ablakban ellenőrizze a közzététel állapotát. Az alkalmazás közzététele után az alkalmazás URL-címe kimenetként jelenik meg:
Alkalmazásbeállítás hozzáadása a gyorsítótárhoz
Az új alkalmazás közzététele után adjon hozzá egy új alkalmazásbeállítást az Azure Portalon. Ez a beállítás tárolja a gyorsítótár kapcsolati adatait.
Az alkalmazásbeállítás hozzáadása:
Az Azure Portalon adja meg az alkalmazás nevét a keresősávon.
Adjon hozzá egy CacheConnection nevű új alkalmazásbeállítást, amelyet az alkalmazás a gyorsítótárhoz való csatlakozáshoz fog használni. Használja ugyanazt az értéket,
CacheConnection
mint a CacheSecrets.config fájlban. Az érték tartalmazza a gyorsítótár gazdagépének nevét és a hozzáférési kulcsot.
Az alkalmazás futtatása az Azure-ban
Lépjen a böngészőben az alkalmazás URL-címére. Az URL-cím megjelenik a közzétételi művelet eredményei között a Visual Studio Kimeneti ablakban. Az alkalmazás Áttekintés paneljén az Azure Portalon is megjelenik.
A weblap navigációs sávján válassza az Azure Cache for Redis Test lehetőséget a gyorsítótár-hozzáférés teszteléséhez, ahogyan a helyi verzió esetében tette.
Az erőforrások eltávolítása
Ha továbbra is használni szeretné a cikkben létrehozott erőforrásokat, tartsa meg az erőforráscsoportot.
Ellenkező esetben az erőforrásokhoz kapcsolódó díjak elkerülése érdekében, ha befejezte az erőforrások használatát, törölheti a létrehozott Azure-erőforráscsoportot.
Figyelmeztetés
Az erőforráscsoport törlése nem vonható vissza. Erőforráscsoport törlésekor az erőforráscsoport összes erőforrása véglegesen törlődik. Figyeljen arra, hogy ne töröljön véletlenül erőforráscsoportot vagy erőforrásokat. Ha olyan meglévő erőforráscsoportban hozta létre az erőforrásokat, amelyekben meg szeretné tartani az erőforrásokat, az erőforráscsoport törlése helyett egyenként törölheti az egyes erőforrásokat.
Erőforráscsoport törlése
Jelentkezzen be az Azure Portalra, és válassza az Erőforráscsoportok elemet.
Jelölje ki a törölni kívánt erőforráscsoportot.
Ha sok erőforráscsoport van, a Szűrő bármely mezőhöz mezőbe írja be a cikk végrehajtásához létrehozott erőforráscsoport nevét. A keresési eredmények listájában válassza ki az erőforráscsoportot.
Válassza az Erőforráscsoport törlése elemet.
Az Erőforráscsoport törlése panelen adja meg az erőforráscsoport nevét a megerősítéshez, majd válassza a Törlés lehetőséget.
Néhány percen belül az erőforráscsoport és annak összes erőforrása törlődik.