Sdílet prostřednictvím


Rychlý start: Použití Azure Cache for Redis s webovou aplikací ASP.NET

V tomto rychlém startu pomocí sady Visual Studio 2019 upravíte ASP.NET webovou aplikaci, která se připojí ke službě Azure Cache for Redis pro ukládání a získávání dat z mezipaměti. Pak aplikaci nasadíte do služby Aplikace Azure Service.

Přeskočit na kód

Tento článek popisuje, jak upravit kód ukázkové aplikace a vytvořit funkční aplikaci, která se připojuje ke službě Azure Cache for Redis.

Pokud chcete přejít přímo na ukázkový kód, podívejte se na ukázku rychlého startu ASP.NET na GitHubu.

Požadavky

Vytvoření mezipaměti

Dále vytvořte mezipaměť, která se bude používat s aplikací.

  1. Pokud chcete vytvořit mezipaměť, přihlaste se k webu Azure Portal. V nabídce portálu vyberte Vytvořit prostředek.

    Sceenshot zobrazte zvýrazněnou možnost Vytvořit prostředek v levém navigačním podokně na webu Azure Portal.

  2. V podokně Začínáme zadejte azure Cache for Redis na panelu hledání. Ve výsledcích hledání vyhledejte Azure Cache for Redis a pak vyberte Vytvořit.

    Snímek obrazovky znázorňující Azure Marketplace se službou Azure Cache for Redis ve vyhledávacím poli a zvýrazněným tlačítkem Vytvořit

  3. V podokně New Redis Cache na kartě Základy nakonfigurujte pro mezipaměť následující nastavení:

    Nastavení Akce Popis
    Předplatné Vyberte své předplatné Azure. Předplatné, které se má použít k vytvoření nové instance Azure Cache for Redis.
    Skupina prostředků Vyberte skupinu prostředků nebo vyberte Vytvořit novou a zadejte název nové skupiny prostředků. Název skupiny prostředků, ve které chcete vytvořit mezipaměť a další prostředky. Když umístíte všechny prostředky aplikace do jedné skupiny prostředků, můžete je snadno spravovat nebo odstraňovat společně.
    Název DNS Zadejte jedinečný název. Název mezipaměti musí být řetězec 1 až 63 znaků, který obsahuje jenom číslice, písmena a pomlčky. Název musí začínat a končit číslem nebo písmenem a nesmí obsahovat po sobě jdoucí pomlčky. Název hostitele vaší instance mezipaměti je \<DNS name>.redis.cache.windows.net.
    Místo Vyberte umístění. Oblast Azure, která je blízko jiných služeb, které používají vaši mezipaměť.
    Skladová položka mezipaměti Vyberte skladovou položku. Skladová položka určuje velikost, výkon a parametry funkcí, které jsou k dispozici pro mezipaměť. Další informace najdete v přehledu služby Azure Cache for Redis.
    Velikost mezipaměti Vyberte velikost mezipaměti. Další informace najdete v přehledu služby Azure Cache for Redis.
  4. Vyberte kartu Sítě nebo vyberte Další: Sítě.

  5. Na kartě Sítě vyberte metodu připojení, která se má použít pro mezipaměť.

  6. Vyberte kartu Upřesnit nebo vyberte Další: Upřesnit.

  7. V podokně Upřesnit ověřte nebo vyberte metodu ověřování na základě následujících informací:

    Snímek obrazovky s podoknem Upřesnit a dostupnými možnostmi, které můžete vybrat

    • Ve výchozím nastavení je pro novou mezipaměť Basic, Standard nebo Premium povolená služba Microsoft Entra Authentication a ověřování přístupových klíčů je zakázané.
    • U mezipamětí Basic nebo Standard můžete zvolit výběr pro port jiného typu než TLS.
    • U mezipamětí Standard a Premium můžete povolit zóny dostupnosti. Po vytvoření mezipaměti nemůžete zakázat zóny dostupnosti.
    • Pro mezipaměť Premium nakonfigurujte nastavení pro port bez protokolu TLS, clustering, spravovanou identitu a trvalost dat.

    Důležité

    Pro zajištění optimálního zabezpečení doporučujeme použít ID Microsoft Entra se spravovanými identitami k autorizaci požadavků v mezipaměti, pokud je to možné. Autorizace pomocí Microsoft Entra ID a spravovaných identit poskytuje vynikající zabezpečení a snadné použití prostřednictvím autorizace sdíleného přístupového klíče. Další informace o používání spravovaných identit s mezipamětí naleznete v tématu Použití MICROSOFT Entra ID pro ověřování mezipaměti.

  8. (Volitelné) Vyberte kartu Značky nebo vyberte Další: Značky.

  9. (Volitelné) Na kartě Značky zadejte název a hodnotu značky , pokud chcete zařadit prostředek mezipaměti do kategorií.

  10. Vyberte tlačítko Zkontrolovat a vytvořit.

    Na kartě Zkontrolovat a vytvořit Azure vaši konfiguraci automaticky ověří.

  11. Jakmile se zobrazí zelená zpráva o úspěšném ověření, vyberte Vytvořit.

Během několika minut dojde k novému nasazení mezipaměti. Průběh nasazení můžete monitorovat v podokně Přehled služby Azure Cache for Redis. Když se zobrazí stav Spuštěno, je mezipaměť připravená k použití.

Získání názvu hostitele, portů a přístupového klíče

Aby se klient mezipaměti připojil k serveru Azure Cache for Redis, potřebuje název hostitele, porty a přístupový klíč mezipaměti. Někteří klienti můžou na tyto položky odkazovat pomocí mírně odlišných názvů. Název hostitele, porty a klíče můžete získat na webu Azure Portal.

  • Získání přístupového klíče pro mezipaměť:

    1. Na webu Azure Portal přejděte do mezipaměti.
    2. V nabídce služby v části Nastavení vyberte Ověřování.
    3. V podokně Ověřování vyberte kartu Přístupové klávesy.
    4. Pokud chcete zkopírovat hodnotu přístupového klíče, vyberte v poli klíč ikonu Kopírovat .

    Snímek obrazovky, který ukazuje, jak najít a zkopírovat přístupový klíč pro instanci Azure Cache for Redis

  • Získání názvu hostitele a portů pro mezipaměť:

    1. Na webu Azure Portal přejděte do mezipaměti.
    2. V nabídce služby vyberte Přehled.
    3. V části Základy vyberte u názvu hostitele ikonu Kopírovat a zkopírujte hodnotu názvu hostitele. Hodnota názvu hostitele má formulář <DNS name>.redis.cache.windows.net.
    4. U portů vyberte ikonu Kopírovat a zkopírujte hodnoty portu.

    Snímek obrazovky, který ukazuje, jak najít a zkopírovat název hostitele a porty pro instanci Azure Cache for Redis

Úprava souboru CacheSecrets.config

  1. V počítači vytvořte soubor s názvem CacheSecrets.config. Umístěte soubor do umístění, kde není vrácený se změnami se zdrojovým kódem ukázkové aplikace. Pro účely tohoto rychlého startu je soubor CacheSecrets.config ve složce C:\AppSecrets\ .

  2. Upravte soubor CacheSecrets.config a přidejte následující obsah.

    V kódu:

    • <cache-name> nahraďte názvem hostitele mezipaměti.

    • Nahraďte <access-key> primárním přístupovým klíčem pro vaši mezipaměť.

      Tip

      Při rotaci klíčů můžete použít sekundární přístupový klíč jako alternativní klíč během opětovného generování primárního přístupového klíče.

    <appSettings>
        <add key="CacheConnection" value="<cache-name>.redis.cache.windows.net,abortConnect=false,ssl=true,allowAdmin=true,password=<access-key>"/>
    </appSettings>
    
  3. Uložte soubor.

Aktualizace aplikace MVC

V této části aplikace MVC (model-view-controller) zobrazí jednoduchý test připojení ke službě Azure Cache for Redis.

Jak se soubor web.config připojuje k mezipaměti

Při místním spuštění aplikace se informace v CacheSecrets.config používají k připojení k instanci Azure Cache for Redis. Později můžete tuto aplikaci nasadit do Azure. V té době nakonfigurujete nastavení aplikace v Azure, které aplikace používá k načtení informací o připojení k mezipaměti místo konfiguračního souboru.

Vzhledem k tomu, že soubor CacheSecrets.config není nasazený do Azure s vaší aplikací, použijete ho pouze při místním testování aplikace. Udržujte tyto informace co nejbezpečnější, abyste zabránili škodlivému přístupu k datům mezipaměti.

Aktualizace souboru web.config

  1. V Průzkumník řešení otevřete soubor web.config.

    Snímek obrazovky znázorňující soubor web.config v sadě Visual Studio Průzkumník řešení

  2. V souboru web.config nastavte <appSettings> element tak, aby se aplikace spustila místně:

    <appSettings file="C:\AppSecrets\CacheSecrets.config">

Modul runtime ASP.NET sloučí obsah externího souboru se značkami v elementu <appSettings>. Pokud zadaný soubor nelze nalézt, modul runtime atribut souboru ignoruje. Vaše tajné kódy (připojovací řetězce k mezipaměti) nejsou součástí zdrojového kódu aplikace. Když webovou aplikaci nasadíte do Azure, soubor CacheSecrets.config se nenasadí.

Instalace StackExchange.Redis

Vaše řešení vyžaduje, aby se StackExchange.Redis balíček spustil.

StackExchange.Redis Instalace balíčku:

  1. Pokud chcete aplikaci nakonfigurovat tak, aby používala balíček NuGet StackExchange.Redis pro Visual Studio, vyberte nástroje>NuGet Správce balíčků> Správce balíčků konzolu.

  2. V okně konzoly Správce balíčků spusťte následující příkaz:

    Install-Package StackExchange.Redis
    

Balíček NuGet stáhne a přidá požadované odkazy na sestavení pro vaši klientskou aplikaci pro přístup ke službě Azure Cache for Redis pomocí StackExchange.Redis klienta.

Připojení k mezipaměti pomocí RedisConnection

Připojení k mezipaměti spravuje RedisConnection třída. Připojení je nejprve provedeno v tomto příkazu, který je v ContosoTeamStats/ Controllers/HomeController.cs:

   private static Task<RedisConnection> _redisConnectionFactory = RedisConnection.InitializeAsync(connectionString: ConfigurationManager.AppSettings["CacheConnection"].ToString()););

K hodnotě tajného CacheConnection kódu se přistupuje pomocí zprostředkovatele konfigurace Secret Manageru a používá se jako parametr hesla.

V RedisConnection.cs vidíte, že do kódu je přidaný obor názvů StackExchange.Redis. Třída RedisConnection vyžaduje obor názvů.

using StackExchange.Redis;

Kód RedisConnection zajistí, že k mezipaměti bude vždy v pořádku připojení. Připojení se spravuje prostřednictvím ConnectionMultiplexer instance v StackExchange.Redis. Třída RedisConnection znovu vytvoří připojení, když dojde ke ztrátě připojení a nemůže se znovu připojit automaticky.

Další informace najdete v tématu StackExchange.Redis a kód v úložišti GitHub.

Ověření zobrazení rozložení v ukázce

Rozložení domovské stránky pro tuto ukázku je uloženo v souboru _Layout.cshtml . Na této stránce spustíte skutečné testování mezipaměti výběrem azure Cache for Redis Test na této stránce.

  1. V Průzkumník řešení vyberte Zobrazení a potom klikněte pravým tlačítkem myši na sdílenou složku. Pak otevřete soubor _Layout.cshtml .

  2. Ověřte, že je v <div class="navbar-header">následujícím řádku:

    @Html.ActionLink("Azure Cache for Redis Test", "RedisCache", "Home", new { area = "" }, new { @class = "navbar-brand" })
    

    Snímek obrazovky s uvítacími možnostmi a možnostmi navigace na webové stránce

Zobrazení dat z mezipaměti

Na domovské stránce vyberte Azure Cache for Redis Test na navigačním panelu, abyste viděli ukázkový výstup.

  1. V Průzkumník řešení vyberte Zobrazení a potom klikněte pravým tlačítkem myši na domovskou složku.

  2. Ověřte, že v souboru RedisCache.cshtml je následující kód:

    @{
        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>
    

Místní spuštění aplikace

Projekt je standardně nakonfigurovaný tak, aby pro účely testování a ladění byla aplikace hostovaná místně ve službě IIS Express.

Spuštění aplikace místně:

  1. V sadě Visual Studio vyberte Ladění>Spustit ladění a sestavte a spusťte aplikaci místně pro účely testování a ladění.

  2. V prohlížeči vyberte Azure Cache for Redis Test na navigačním panelu.

  3. V následujícím příkladu Message měl klíč dříve hodnotu uloženou v mezipaměti, která byla nastavena pomocí konzoly Azure Cache for Redis na portálu. Aplikace tuto hodnotu z mezipaměti aktualizovala. Aplikace rovněž spustila příkazy PING a CLIENT LIST.

    Snímek obrazovky znázorňující jednoduchý test dokončený místně

Publikování a spuštění v Azure

Jakmile aplikaci úspěšně místně otestujete, můžete ji nasadit do Azure a spustit v cloudu.

Publikování aplikace do Azure:

  1. V sadě Visual Studio klikněte v Průzkumník řešení pravým tlačítkem myši na uzel projektu a vyberte Publikovat.

    Snímek obrazovky se zvýrazněným příkazem nabídky Publikovat v Azure

  2. Vyberte Microsoft Aplikace Azure Service>Create New Publish (Vytvořit novou>publikování).

    Snímek obrazovky s možnostmi nabídky, které se mají nastavit pro publikování do služby App Service

  3. V dialogovém okně Vytvořit plán App Service udělejte následující změny:

    Nastavení Akce Popis
    Název aplikace Použijte výchozí hodnotu. Po nasazení do Azure se název aplikace stane názvem hostitele této aplikace. Název může mít přidanou příponu časového razítka, aby byl název aplikace jedinečný.
    Předplatné Vyberte své předplatné Azure. K tomuto předplatnému se účtují všechny související poplatky za hosting. Pokud máte více předplatných Azure, ověřte, že je vybrané předplatné, které chcete použít.
    Skupina prostředků Použijte stejnou skupinu prostředků, kterou jste použili k vytvoření mezipaměti (například TestResourceGroup). Skupina prostředků vám pomůže spravovat všechny prostředky jako skupinu. Až budete chtít aplikaci odstranit, můžete později odstranit skupinu prostředků a odstranit tak všechny související prostředky.
    Plán služby App Service Vyberte Nový a potom vytvořte nový plán služby App Service s názvem TestingPlan.
    Použijte stejnou hodnotu pro umístění , které jste použili při vytváření mezipaměti.
    Pokud chcete velikost, vyberte Free.
    Plán služby App Service definuje sadu výpočetních prostředků pro provozování webové aplikace.

    Snímek obrazovky s dialogovým oknem App Service v Azure

  4. Po nakonfigurování nastavení hostitele služby App Service vyberte Vytvořit.

  5. V okně Výstup zkontrolujte stav publikování. Po publikování aplikace se adresa URL aplikace zobrazí jako výstup:

    Snímek obrazovky znázorňující okno výstupu publikování v sadě Visual Studio

Přidání nastavení aplikace pro mezipaměť

Po publikování nové aplikace přidejte nové nastavení aplikace na webu Azure Portal. Toto nastavení ukládá informace o připojení k mezipaměti.

Přidání nastavení aplikace:

  1. Na webu Azure Portal zadejte název aplikace na panelu hledání.

    Snímek obrazovky znázorňující hledání aplikace na webu Azure Portal

  2. Přidejte nové nastavení aplikace s názvem PřipojeníKMezipaměti, které aplikace použije pro připojení k mezipaměti. Použijte stejnou hodnotu, kterou jste použili CacheConnection v souboru CacheSecrets.config . Tato hodnota obsahuje název hostitele mezipaměti a přístupový klíč.

    Snímek obrazovky znázorňující přidání nastavení aplikace

Spuštění aplikace v Azure

  1. V prohlížeči přejděte na adresu URL aplikace. Adresa URL se zobrazí ve výsledcích operace publikování v okně Výstup sady Visual Studio. Zobrazí se také na webu Azure Portal v podokně Přehled vaší aplikace.

  2. Na navigačním panelu webové stránky vyberte Azure Cache for Redis Test a otestujte přístup k mezipaměti, jako jste to udělali s místní verzí.

Vyčištění prostředků

Pokud chcete dál používat prostředky, které jste vytvořili v tomto článku, ponechte skupinu prostředků.

V opačném případě můžete zabránit poplatkům souvisejícím s prostředky, pokud jste dokončili používání prostředků, můžete odstranit skupinu prostředků Azure, kterou jste vytvořili.

Upozorňující

Odstranění skupiny prostředků je nevratné. Když odstraníte skupinu prostředků, všechny prostředky ve skupině prostředků se trvale odstraní. Ujistěte se, že nechtěně neodstraníte nesprávnou skupinu prostředků nebo prostředky. Pokud jste prostředky vytvořili v existující skupině prostředků, která obsahuje prostředky, které chcete zachovat, můžete místo odstranění skupiny prostředků odstranit jednotlivé prostředky.

Odstranění skupiny prostředků

  1. Přihlaste se k portálu Azure Portal a potom vyberte Skupiny prostředků.

  2. Vyberte skupinu prostředků, která se má odstranit.

    Pokud existuje mnoho skupin prostředků, zadejte do pole Filtr libovolné pole název skupiny prostředků, kterou jste vytvořili pro dokončení tohoto článku. V seznamu výsledků hledání vyberte skupinu prostředků.

    Snímek obrazovky znázorňující seznam skupin prostředků, ze které si můžete vybrat, ze kterého chcete odstranit

  3. Vyberte Odstranit skupinu prostředků.

  4. V podokně Odstranit skupinu prostředků zadejte název skupiny prostředků, abyste ji potvrdili, a pak vyberte Odstranit.

    Snímek obrazovky znázorňující pole, které vyžaduje zadání názvu prostředku k potvrzení odstranění

Během několika okamžiků se odstraní skupina prostředků a všechny její prostředky.