Seznamte se s Redis a zjistěte, jak optimalizovat aplikace Node pomocí tohoto výkonného úložiště dat.

Když vytváříte webovou aplikaci, měli byste se ujistit, že je škálovatelná a efektivní. Chcete-li to provést, musíte vzít v úvahu několik zásad a konceptů.

Redis je jednou z mnoha technologií, které mohou pomoci zlepšit výkon vašich webových aplikací. Nabízí pozoruhodné funkce, které můžete použít ke zvýšení výkonu jakékoli webové aplikace.

Takže, co přesně je Redis a jak jej můžete začít používat s vašimi webovými aplikacemi Node.js?

Co je Redis a kdy jej používat?

Redis je úložiště dat klíč–hodnota s otevřeným zdrojovým kódem v paměti. Je to flexibilní technologie, která může fungovat jako pracovní fronta, databáze, mezipaměť, správce relací, zprostředkovatel zpráv a další.

Kombinace rychlosti, všestrannosti a snadného použití Redis z něj dělá velmi cenný nástroj v ekosystému vývojářů softwaru.

Kdy byste měli používat Redis?

Redis je vhodný pro mnoho úkolů, ale měli byste být opatrní a používat jej pouze tehdy, když to má smysl.

instagram viewer

Měli byste zvážit použití Redis v těchto scénářích:

  • Ukládání do mezipaměti: Redis je nejoblíbenější způsob implementace mezipaměti, který pomáhá předcházet zatížení databází a zlepšuje celkový výkon.
  • Správa relace: Ukládání a správa uživatelských relací pro ověřování a správu stavu je s Redis velmi snadné.
  • Dočasné úložiště dat: Redis vám umožňuje ukládat data a po určité době je automaticky mazat. To z něj dělá dobrý nástroj pro ukládání dočasných dat jako např webové tokeny JSON, fronty práce, atd.

Mezi další případy, pro které byste měli zvážit použití Redis, patří implementace zprostředkovatele zpráv, optimalizace databázové operace a dokonce i efektivní ukládání a přístup k datovým strukturám, jako jsou seznamy, sady a hash.

Jak používat Redis s Node.js

Node.js je oblíbená technologie pro vytváření efektivních a škálovatelných aplikací na straně serveru. Můžete jej použít ve spojení s podpůrnými technologiemi, jako je Redis, abyste získali vysoký výkon a škálovatelnost.

Redis podporuje několik jazyků. Můžete to použít pro ukládání dat v PHP a pro Golang jsou vynikající klienti Redis. Dva nejoblíbenější klienti Redis pro Node.js jsou uzel-redis a ioredis.

Oba balíčky jsou dostupné přes npm a snadno se používají. Hlavní rozdíl je v tom uzel-redis je oficiálním klientem, zatímco komunita doporučuje ioredis.

Připojení k Redis z Node.js

Chcete-li začít, musíte mít na počítači nainstalovaný Redis a nastavit vývojové prostředí Node.js. Podívejte se na instalační příručku na Redis.io k instalaci Redis na Linux, macOS a Windows.

Abyste se mohli připojit k Redis, musíte do svého projektu nainstalovat preferovanou sadu SDK klienta Redis. V závislosti na vašich preferencích (použijeme uzel-redis), spusťte některý z níže uvedených příkazů a nainstalujte klienta Redis:

npm nainstalovat redis --save
npm nainstalovat ioredis --save

První příkaz se nainstaluje uzel-redis, zatímco druhý se nainstaluje ioredis.

Chcete-li nakonfigurovat nově nainstalovaného klienta, musíte zajistit, aby byl spuštěn Redis. Můžete to udělat jednoduchým spuštěním redis-cli ve vašem terminálu:

The ping příkaz ping na server, aby potvrdil, že běží, a a PONG odpověď v CLI znamená, že server funguje správně. Nyní vytvořte a redis.js soubor ve vašem projektu Node a napište do něj následující kód pro konfiguraci Redis:

konst redis = vyžadovat("redis")

// inicializovat pomocí výchozí konfigurace
konst RedisClient = redis.createClient()

konst connectRedis = asynchronní () => {
// připojení k redis
čekat RedisClient.connect()

// zpracování chyby
RedisClient.on('chyba', (chyba) => {
řídicí panel.chyba(`Došlo k chybě s Redis: ${err}`)
})

řídicí panel.log('Redis úspěšně připojen...')
}

Výše uvedený kód inicializuje nového klienta Redis v aplikaci. The createClient funkce balíčku redis vám umožňuje vytvořit klienta pomocí vámi zadaných parametrů.

Můžete zadat hostitele, port, uživatelské jméno, heslo nebo připojovací řetězec nebo použít výchozí hodnoty. Například, uzel-redis začne běžet na localhost, na portu 6379, ve výchozím stavu.

Zde je několik způsobů, jak můžete použít createClient funkce:

// pomocí připojovacího řetězce
konst RedisClient = redis.createClient("rediss://127.0.0.1:6379")

// pomocí objektu parametru
konst RedisClient = redis.createClient({
zásuvka: {
hostitel: "127.0.0.1",
přístav: "6379"
},
uživatelské jméno: "vaše uživatelské jméno redis",
Heslo: "vaše heslo"
})

Používejte zabezpečené instance Redis v produkci. V tomto případě máte buď jistotu URL řetězec pro připojení nebo použijte parametry uvedené výše. Ať už je to jakkoli, vždy pamatujte na to, aby se přihlašovací údaje nedostaly do kódu a místo toho použijte proměnné prostředí.

Provádění základních operací Redis v Node.js

Následující kód se připojuje k Redis pomocí připojitRedis výše a ukazuje některé základní operace, které můžete provádět v Redis z aplikací Node.

konst testRedis = asynchronní () => {
čekat connectRedis()

// Nastavení a načtení hodnoty
čekat RedisClient.set("název", "Timmy")
konst getCommand = čekat RedisClient.get("název")
řídicí panel.log (getCommand)

// Okamžitě smažte hodnoty nebo naplánujte jejich vypršení
// za několik sekund
čekat RedisClient.del("název");
čekat RedisClient.setEx("umístění", 60, "Lagos")

// Zatlačte na přední nebo zadní stranu seznamu
čekat RedisClient.lPush("dny", "pondělí")
čekat RedisClient.rPush("dny", "úterý")
čekat RedisClient.lPush("dny", "středa")
konst daysArray = čekat RedisClient.lRange("dny", 0, -1)
// tiskne [ 'streda', 'pondělí', 'úterý' ]
řídicí panel.log (daysArray)

// Odebrání položky ze zadní nebo přední části seznamu
čekat RedisClient.rPop("dny")
čekat RedisClient.lPop("dny")
konst newDaysArray = čekat RedisClient.lRange("dny", 0, -1)
// tiskne [ 'pondělí' ]
řídicí panel.log (newDaysArray)
}

testRedis()

Všimněte si použití asynchronní a čekat tady. Je to proto, že všechny funkce běží asynchronně a vracejí sliby, takže pokud potřebujete jejich výsledky okamžitě, je důležité čekat jim.

Výše uvedený kód ukazuje pouze některé základní operace, které můžete provádět v Redis z aplikace Node.js. Existuje mnohem více příkazů a konceptů, které stojí za to si prohlédnout.

The Příkazy Redis sekce v souboru README na node-redis'sGitHub úložiště je dobré místo pro nalezení všech ostatních příkazů a toho, co dělají.

Používejte Redis k vytváření efektivních aplikací

Využití výkonu Redis vám jako vývojáři umožňuje vytvářet vysoce efektivní aplikace na straně serveru. S úložištěm dat Redis v paměti a rozsáhlými datovými strukturami a příkazy mohou aplikace dosáhnout pozoruhodných optimalizací výkonu.

Rozhodně byste měli zvážit integraci Redis do vaší další aplikace Node.js, abyste zvýšili výkon své aplikace a zajistili lepší uživatelský dojem.