ASP.NET Core implementuje mikroslužby, musíte řešit problém konfiguračního centra. Ať už jde o mikroservis nebo ne, je velmi obtížné měnit konfigurační soubor jeden po druhém s více uzly, a dnes vám představím lehké řešení konfiguračního centra založené na Consulu. Rychlé aktualizace profilů se dosahují bez nutnosti přestavování stránek.
pozadí
Obvykle jsou konfigurace v .NET aplikacích ukládány v konfiguračních souborech, jako jsou App.config, Web.config nebo appsettings.json. Od ASP.Net Core se objevil nový rozšiřitelný konfigurační rámec, který umožnil ukládání konfigurací mimo konfigurační soubory a získávání z příkazové řádky, proměnných prostředí a dalších.
V tradičních projektech vyžaduje úprava konfiguračních souborů přihlášení do produkčního prostředí pro úpravy, což není pohodlné pro údržbu a správu projektů, když je projektů mnoho.
Proto používáme Consul pro online konfiguraci v reálném čase, což dosahuje cíle reakce v reálném čase pouze změnou konfigurace bez nutnosti restartovat službu. Implementační myšlenka je založena na klíči/hodnotě Consul, a více uzlů Consul lze automaticky synchronizovat a konfigurovat, přičemž náš program je implementovat ConfigurationProvider a naslouchat změnám Consul.
Konfigurace konzula
Pro stažení a instalaci se můžete podívat na:
ASP.NET Konfigurace jádra
Nejprve nainstalujte balíček nuget pomocí následujícího příkazu:
Upravte Program.cs soubor následujícím kódem:
Pro více informací o Configuration se prosím podívejte na:
Přihlášení k hypertextovému odkazu je viditelné.
Nakonfigurujte adresu servisního centra Consul a upravte soubor appsettings.json následovně:
Kód ovladače je následující:
Začněte projekt podle níže:
Protože my v Consulu nekonfigurujeme hodnotu testu, načtení je prázdné.
Otevři toPřihlášení k hypertextovému odkazu je viditelné.Nakonfigurujte soubory potřebné pro projekt.
Profilová adresa čtená projektem je:
"/WebApplication1/appsettings. Development.json" Proto musíme vytvořit novou složku "WebApplication1" a "appsettings. Development.json" soubor, jak je uvedeno níže:
Hodnota je následující:
Po uložení obnovujeme web, jak je uvedeno níže:
Testoval jsem čínské znaky bez problémů, jak je vidět níže:
Je vidět, že hodnota testu je úspěšně získána, což realizuje dynamickou konfigurační funkci, a konfigurační soubor je aktualizován za horka bez nutnosti restartovat web. |