Telepítés és High Availability Redis NodeJS-ben

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.