Redis Replication A NodeJS beállításához High Availability kövesse az alábbi lépéseket:
Telepítés Redis
Először telepítenie kell Redis a kiszolgálóra. Letöltheti a hivatalos webhelyről, vagy használhat csomagkezelőt, például apt vagy brew.
Konfigurálás Redis ehhez Replication
Nyissa meg a Redis konfigurációs fájlt(redis.conf), és hajtsa végre a következő módosításokat:
# Enable replication
replicaof <master_ip> <master_port>
Cserélje ki a <master_ip>
és a főkiszolgáló <master_port>
IP-címét és portját. Redis
tart Redis replikák
Indítson el több Redis példányt különböző kiszolgálókon vagy portokon, amelyek a fő másolataként működnek. Redis Minden példányhoz ugyanazt a konfigurációs fájlt használja .
Használd Redis Client a NodeJS-ben
A NodeJS alkalmazásban használjon egy Redis ügyfélkönyvtárat, például az „ioredis”-t a Redis példányokhoz való csatlakozáshoz. A kliens automatikusan kezeli a feladatátvételi és útválasztási kéréseket a megfelelő kiszolgálóhoz.
Példa az Redis "ioredis"-hez való csatlakozásra a NodeJS-ben:
const Redis = require('ioredis');
const redis = new Redis({
sentinels: [{ host: 'sentinel_ip', port: sentinel_port }],
name: 'mymaster',
role: 'slave',
});
Cserélje ki a 'sentinel_ip'
és sentinel_port
a kiszolgáló IP-címét és portját Redis Sentinel, amely figyeli a főkiszolgálót és kezeli a feladatátvételt.
Monitor Redis Sentinel
Redis Sentinel felelős a Redis példányok figyeléséért és a feladatátvétel kezeléséért. Telepítse és konfigurálja Redis Sentinel egy külön kiszolgálón, és adja hozzá a részleteket a NodeJS alkalmazásban.
Példa az Redis Sentinel "ioredis"-hez való csatlakozásra a NodeJS-ben:
const Redis = require('ioredis');
const sentinel = new Redis({
sentinels: [
{ host: 'sentinel1_ip', port: sentinel1_port },
{ host: 'sentinel2_ip', port: sentinel2_port },
// Add more Sentinel servers if needed
],
name: 'mymaster',
});
const redis = new Redis({
sentinels: [
{ host: 'sentinel1_ip', port: sentinel1_port },
{ host: 'sentinel2_ip', port: sentinel2_port },
// Add more Sentinel servers if needed
],
name: 'mymaster',
});
Cserélje ki 'sentinel1_ip'
a, sentinel1_port
, 'sentinel2_ip'
, sentinel2_port
stb. elemet a kiszolgálók IP-címeivel és portjaival Redis Sentinel.
Failover tesztelése és High Availability
Redis replication A és teszteléséhez high availability szimulálhatja a főkiszolgáló meghibásodását. Redis Sentinel automatikusan elő kell vinnie az egyik replikát az új mesterré, és zökkenőmentesen kezelnie kell a feladatátvételt.
Ezeket a lépéseket követve elérheti Redis Replication és High Availability a NodeJS alkalmazásában az adatredundanciát és a folyamatos működést kiszolgálóhiba esetén is biztosíthatja.