Programování

Jak pracovat s Redis Cache v .NET

Ukládání do mezipaměti je strategie správy stavu, kterou lze použít ke zlepšení výkonu vašich aplikací, protože vám pomůže snížit spotřebu prostředků ve vašem systému.

Redis Cache je otevřená, vysokorychlostní databáze NoSQL. Je to rychlé a běží to úplně v paměti se zanedbatelným režijním výkonem při čtení a zápisu dat. Je třeba poznamenat, že Redis je zdarma pro komerční i nekomerční použití na základě licence BSD.

Co je Redis Cache a proč bych ji měl používat?

Redis je jedním z nejpopulárnějších otevřených datových úložišť založených na NoSQL v paměti, které jsou k dispozici. Jedná se o úložiště dat v paměti, které může podporovat širokou škálu datových struktur, tj. Řetězce, hashe, sady, seznamy atd. Redis také poskytuje integrovanou podporu pro replikaci a transakce, stejně jako vynikající podporu pro perzistenci dat.

Redis je dobrá volba především v případě, že vaše aplikace potřebuje ukládat a načítat obrovské množství dat. Pokud vaše aplikace potřebuje ukládat a načítat spoustu dat a dostupnost volné paměti není omezení, Redis Cache je modul pro ukládání do mezipaměti, který byste měli použít. Nastavení Redis je poměrně jednoduché - následující části pojednávají o instalaci, konfiguraci a používání Redis.

Instalace Redis

Kopii Redis Cache si můžete stáhnout z GitHubu. Při instalaci Redis byste měli zkontrolovat možnost přidat Redis do proměnné prostředí PATH. Jakmile je ve vašem systému nainstalována Redis Cache, můžete zadat Run -> service.msc a zobrazit službu Redis spuštěnou ve vašem systému.

Práce s klientem C # Redis

Nyní, když byl ve vašem systému nainstalován Redis, potřebujete klienta pro ukládání a načítání dat do az Redis Cache. V tomto příkladu použijeme open source klienta ServiceStack C # Redis. Chcete-li to provést, vytvořte nový projekt konzolové aplikace v sadě Visual Studio. ServiceStack.Redis můžete nainstalovat pomocí správce balíčků NuGet.

Za předpokladu, že ServiceStack.Redis byl nainstalován prostřednictvím NuGet, následující dvě metody ilustrují, jak můžete ukládat a načítat data z mezipaměti Redis pomocí rozhraní ServiceStack.Redis.

soukromý statický bool Uložit (hostitel řetězce, klíč řetězce, hodnota řetězce)

        {

bool isSuccess = false;

pomocí (RedisClient redisClient = nový RedisClient (hostitel))

            {

if (redisClient.Get (key) == null)

                {

isSuccess = redisClient.Set (klíč, hodnota);

                }

            }

návrat jeÚspěch;

        }

soukromý statický řetězec Získat (hostitel řetězce, klíč řetězce)

        {

pomocí (RedisClient redisClient = nový RedisClient (hostitel))

            {

návrat redisClient.Get (klíč);

            }

        }

Všimněte si, jak byly metody Set a Get třídy RedisClient použity k ukládání a načítání dat do az Redis Cache. Nechám na vás, abyste tyto dvě metody aktualizovali, aby byly obecné, aby mohly pracovat s jakýmkoli typem.

Zde je způsob, jak můžete volat tyto metody z hlavní metody:

static void Main (řetězec [] args)

        {

string host = "localhost";

řetězec klíč = "";

// Ukládání dat do mezipaměti

bool success = Uložit (hostitel, klíč, „Hello World!“);

// Načíst data z mezipaměti pomocí klíče

Console.WriteLine ("Data načtená z Redis Cache:" + Get (hostitel, klíč));

Console.Read ();

        }

Jak jsem řekl dříve, Redis je bohatý na funkce. V jednom z mých budoucích článků zde pojednám o některých pokročilých koncepcích, jako je vytrvalost, pub-sub, automatické převzetí služeb při selhání atd. Můžete využít výhod vytrvalosti RDB (jeden kompaktní soubor) nebo AOF. Než však vyberete správnou možnost perzistence, musíte zvážit kompromisy mezi výkonem, trvanlivostí a vstupy / výstupy disku.

Další informace o Redis najdete v online dokumentaci projektu.

Pokud máte zájem o zobrazení dat Redis pomocí nástroje pro správu GUI, můžete vyzkoušet nástroj Redis Admin UI.

$config[zx-auto] not found$config[zx-overlay] not found