Redis získal velmi vysokou popularitu jako cache. Je to nejen rychlé, ale také snadné použití. Ukážeme vám, proč byste měli používat Redis jako mezipaměť.
Ukládání aplikací do mezipaměti je zásadní pro provoz jakékoli rozsáhlé webové aplikace. Redis je tu, aby vám s tímto úkolem pomohl.
Každý z nás se setkal se situací, kdy nějaká aplikace fungovala pomalu. I ten nejlepší kód zpomalí svůj výkon při velkém zatížení.
Ukládání do mezipaměti může být rychlý a relativně levný způsob, jak zvýšit výkon a zkrátit dobu odezvy.
Co je Redis
Redis (RE mote DI slovník S erver) je open-source úložiště dat v paměti, které se nejčastěji používá jako distribuovaná mezipaměť. Nabízí řadu efektivních datových struktur navržených tak, aby umožňovaly bleskově rychlý přístup k vašim datům.
Redis je také známý jako databáze NoSQL a úložiště klíčů a hodnot. Protože ukládá data do paměti, nikoli na disk, Redis poskytuje bezkonkurenční rychlost, spolehlivost a výkon.
Co je to úložiště dat v paměti? Zjednodušeně řečeno je to databáze, která uchovává celý datový soubor v paměti RAM. Při každém dotazu na databázi nebo aktualizaci dat v databázi máte přístup pouze do hlavní paměti.
Do těchto operací tedy není zapojen žádný disk. A to je skvělé, protože hlavní paměť je mnohem rychlejší než jakýkoli disk.
Proč používat Redis jako mezipaměť
Mezipaměť je primární účelem je zkrátit dobu potřebnou pro přístup k datům uloženým mimo hlavní paměťový prostor aplikace.
Bez použití mezipaměti aplikace komunikuje se zdrojem dat pro každý požadavek. Naproti tomu při použití mezipaměti je zapotřebí pouze jeden požadavek na externí zdroj dat s následným přístupem z mezipaměti.
Když se aplikace spoléhá na externí zdroje dat, může latence a propustnost těchto zdrojů vytvořit problémové místo výkonu. Jedním ze způsobů, jak zlepšit výkon, je ukládat a manipulovat s daty v paměti, fyzicky blíže k aplikaci.
Zde vstupuje do hry Redis. Redis je navržen tak, aby ukládal všechna data do paměti a poskytoval nejrychlejší možný výkon při čtení nebo zápisu dat.
Redis je extrémně rychlý. Poskytuje doby odezvy pod milisekundy, které umožňují milionům požadavků za sekundu pohánět náročné aplikace v reálném čase.
Obvykle budete chtít ukládat často používaná data v Redis, takže kdykoli budou data požadována, mohla pocházet z mezipaměti místo z vaší databáze.
Poté můžete příslušnou mezipaměť zneplatnit při každé změně vašich dat, abyste mohli udržovat svou mezipaměť aktuální.
Jak funguje mezipaměť Redis
Řekněme, že máte web založený na WordPressu.
Při prvním načtení stránky WordPress se na serveru provede databázový dotaz. Redis si tento dotaz pamatuje nebo ukládá do mezipaměti.
Když tedy jiný uživatel načte stránku WordPress, výsledky jsou poskytovány z Redis a paměti, aniž by bylo nutné dotazovat databázi.
Objektová mezipaměť funguje tak, že ukládá SQL dotazy do mezipaměti v paměti potřebné k načtení stránky WordPress. Poté, když se stránka načte, výsledné výsledky SQL dotazu poskytuje z paměti Redis, takže dotaz nemusí zasáhnout databázi.
Výsledkem je rychlejší načítání stránky a menší dopad serveru na zdroje databáze.
Přístup k datům v paměti (fyzické paměti RAM) je mnohem rychlejší než na pevném disku. Je tedy snadné si všimnout, že pokud jsou data, ke kterým chce aplikace přistupovat, v hlavní paměti, je mnohem snazší se k nim dostat, než kdyby byla uložena na pevném disku.
Pokud není dotaz v Redis k dispozici, databáze poskytne výsledek a Redis přidá výsledek do své mezipaměti.
Předpokládejme však, že je v databázi aktualizována hodnota (například je vytvořen nový příspěvek nebo stránka ve WordPressu). Potom je hodnota Redis pro tento dotaz zrušena, aby se zabránilo zobrazení nedostatků uložených dat.
Proč používat Redis?
- Databáze rychlé odpovědi: ukládá data spíše do paměti než na disk; jeho doba odezvy je rychlejší než u ostatních při provádění operací čtení a zápisu. Lze ji použít společně s jinými databázemi jako podporu pro snížení zátěže a zlepšení výkonu, ale lze ji použít také jako primární databázi.
- Stálost dat : Redis používá trvalé diskové úložiště, aby přežilo výpadky procesů a úzká místa v síti.
- Mezipaměť relace :Jedním z nejviditelnějších případů použití Redis je použití jako mezipaměti relace. Použití Redis nad jinými obchody relací znamená, že Redis nabízí perzistenci.
- Přístup na základě klíče: Redis je založen na modelu klíč–hodnota, ve kterém jsou data uložena a načítána z Redis podle klíče. Klíčový přístup umožňuje vysoce efektivní přístupové časy a tento model se přirozeně mapuje na ukládání do mezipaměti.
Informace, které jsou k tomuto tématu k dispozici, jsme tedy pouze poškrábali. Můžete navštívit dokumentaci s dostupnými zdroji, kde najdete další informace o učení Redis.