Osvědčené postupy pro Azure App Service

Tento článek shrnuje osvědčené postupy pro používání Azure App Service.

Společné umístění

Když jsou prostředky Azure, které vytváří řešení, jako je webová aplikace a databáze, umístěné v různých oblastech, může to mít následující důsledky:

  • Vyšší latence při komunikaci mezi prostředky
  • Peněžní poplatky za přenos odchozích dat mezi oblastmi, jak je uvedeno na stránce s cenami Azure.

Společné umístění ve stejné oblasti je nejvhodnější pro prostředky Azure, které tvoří řešení, jako je webová aplikace a databáze nebo účet úložiště, který slouží k ukládání obsahu nebo dat. Při vytváření prostředků se ujistěte, že jsou ve stejné oblasti Azure, pokud nemáte konkrétní obchodní nebo návrhový důvod pro tyto účely. Aplikaci App Service můžete přesunout do stejné oblasti, ve které je vaše databáze, pomocí funkce klonování App Service , která je aktuálně dostupná pro aplikace Premium App Service Plan.

Když aplikace spotřebovávají více paměti, než se očekávalo

Pokud si všimnete, že aplikace spotřebovává více paměti, než se očekávalo, jak je uvedeno v doporučeních pro monitorování nebo služby, zapamatujte si funkci App Service automatickéopravy. Jedna z možností funkce Automatické opravy přijímá vlastní akce založené na prahové hodnotě paměti. Akce vychází z e-mailových oznámení do šetření prostřednictvím výpisu paměti při zmírnění omezení na místě tím, že se pracovní proces recykluje. Automatické opravy se dají konfigurovat prostřednictvím web.config a prostřednictvím popisného uživatelského rozhraní popsaného v tomto příspěvku blogu pro rozšíření webu podpora App Service.

Když aplikace spotřebovávají více PROCESORů, než se očekávalo

Když si všimnete, že aplikace spotřebovává více PROCESORů, než se očekávala, nebo se pokusíte o opakované využití procesoru, jak je uvedeno v doporučení týkající se monitorování nebo služby, zvažte možnost škálovat škálování nebo škálovat App Service plánu. Pokud je vaše aplikace stavová, je jedinou možností horizontální navýšení kapacity, pokud je vaše aplikace Bezstavová, nabízí větší flexibilitu a vyšší škálovatelnost.

Další informace o stavových a bezstavových aplikacích můžete sledovat v tomto videu: plánování škálovatelné komplexní aplikace na více úrovních v Azure App Service. Další informace o možnostech škálování App Service a automatického škálování najdete v tématu škálování webové aplikace v Azure App Service.

Při vyčerpání prostředků soketu

Běžným důvodem pro vyčerpání odchozích připojení TCP je použití klientských knihoven, které nejsou implementované k opakovanému použití připojení TCP, nebo když se nepoužívá protokol vyšší úrovně, jako je HTTP-Keep-Alive. Přečtěte si dokumentaci ke každé knihovně, na kterou odkazují aplikace v plánu App Service, abyste se ujistili, že jsou ve vašem kódu nakonfigurované nebo používané pro efektivní opakované použití odchozích připojení. Dále postupujte podle pokynů v dokumentaci ke knihovně pro správné vytvoření a vystavení nebo vyčištění, abyste zabránili nevracení připojení. I když tyto klientské knihovny probíhá šetření, dopad může být omezen škálováním na více instancí.

Node.js a odchozí požadavky http

Při práci s Node.js a mnoho odchozích požadavků HTTP, které řeší Keep-Alive HTTP, je důležité. Pomocí balíčku agentkeepalive můžete npm usnadnit práci s vaším kódem.

Vždy zpracujte http odpověď, i když neuděláte nic v obslužné rutině. Pokud odpověď nezpracujete správně, vaše aplikace se zablokuje, protože už nejsou k dispozici žádné další sokety.

Například při práci s http https balíčkem nebo:

const request = https.request(options, function(response) {
    response.on('data', function() { /* do nothing */ });
});

Pokud používáte App Service v systému Linux na počítači s více jádry, další osvědčeným postupem je použití konfiguračního PM2 ke spuštění více procesů Node.js ke spuštění aplikace. Můžete to provést zadáním spouštěcího příkazu do kontejneru.

Pokud například chcete spustit čtyři instance:

pm2 start /home/site/wwwroot/app.js --no-daemon -i 4

Když se spustí zálohování vaší aplikace jako neúspěšné

Mezi nejčastější důvody, proč se zálohování aplikace nezdařily, patří neplatná nastavení úložiště a neplatná konfigurace databáze. K těmto selháním obvykle dochází, když dojde k změnám v úložišti nebo databázových prostředcích nebo při změnách, jak získat přístup k těmto prostředkům (například přihlašovací údaje aktualizované pro databázi vybranou v nastavení zálohování). Zálohy obvykle běží podle plánu a vyžadují přístup k úložišti (pro výstup zálohovaných souborů) a databází (pro kopírování a čtení obsahu, který se má zahrnout do zálohování). Výsledek selhání přístupu k některému z těchto prostředků by představoval konzistentní selhání zálohování.

Pokud dojde k selhání zálohování, Projděte si nejnovější výsledky, abyste zjistili, jaký typ selhání se děje. V případě selhání přístupu k úložišti zkontrolujte a aktualizujte nastavení úložiště použité v konfiguraci zálohování. V případě selhání přístupu k databázi zkontrolujte a aktualizujte řetězce připojení jako součást nastavení aplikace. pak pokračujte v aktualizaci konfigurace zálohování tak, aby správně zahrnovala požadované databáze. Další informace o zálohování aplikací najdete v tématu zálohování webové aplikace v Azure App Service.

Při nasazení nových aplikací Node.js do Azure App Service

Azure App Service výchozí konfigurace pro Node.js aplikace má za cíl nejlépe vyhovovat potřebám nejběžnějších aplikací. Pokud by konfigurace aplikace Node.js mohla těžit z přizpůsobeného ladění za účelem zlepšení výkonu nebo optimalizace využití prostředků procesoru/paměti nebo síťových prostředků, přečtěte si téma osvědčené postupy a Průvodce odstraňováním potíží pro aplikace uzlů v Azure App Service. Tento článek popisuje nastavení iisnode, která může být potřeba nakonfigurovat pro aplikaci Node.js, popisuje různé scénáře nebo problémy, se kterými se vaše aplikace může nacházet, a ukazuje, jak tyto problémy vyřešit.

Další kroky

Další informace o osvědčených postupech najdete v App Service Diagnostics , kde najdete osvědčené postupy, které jsou specifické pro váš prostředek.

  • Přejděte do webové aplikace v Azure Portal.
  • Klikněte na Diagnostika a řešení problémů v levém navigačním panelu, který otevře diagnostiku App Service.
  • Vyberte dlaždici domovské stránky s doporučenými postupy .
  • Pokud chcete zobrazit aktuální stav aplikace v souvislosti s těmito osvědčenými postupy, klikněte na osvědčené postupy pro dostupnost & výkon nebo osvědčené postupy pro optimální konfiguraci .

Tento odkaz můžete použít také k přímému otevření App Service diagnostiky pro váš prostředek: https://ms.portal.azure.com/?websitesextension_ext=asd.featurePath%3Ddetectors%2FParentAvailabilityAndPerformance#@microsoft.onmicrosoft.com/resource/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/troubleshoot .