Asennus ja High Availability Redis NodeJS:ssä

Asenna NodeJS Redis Replication ja noudata näitä ohjeita: High Availability

Asentaa Redis

Ensin sinun on asennettava Redis palvelimellesi. Voit ladata sen viralliselta verkkosivustolta tai käyttää paketinhallintaohjelmaa, kuten apt tai brew.

Määritä Redis _ Replication

Avaa Redis asetustiedosto(redis.conf) ja tee seuraavat muutokset:

# Enable replication  
replicaof <master_ip> <master_port>  

Korvaa <master_ip> ja <master_port> pääpalvelimen IP-osoitteella ja portilla Redis.

torttu Redis replikoita

Käynnistä useita Redis esiintymiä eri palvelimissa tai porteissa, jotka toimivat isäntäkoneen replikoina. Käytä samaa Redis asetustiedostoa jokaiselle esiintymälle.

Käytä Redis Client NodeJS:ssä

Käytä NodeJS-sovelluksessasi Redis asiakaskirjastoa, kuten "ioredis", muodostaaksesi yhteyden ilmentymiin Redis. Asiakas käsittelee automaattisesti vikasieto- ja reitityspyynnöt asianmukaiselle palvelimelle.

Esimerkki yhteyden muodostamisesta Redis "iorediksellä" NodeJS:ssä:

const Redis = require('ioredis');  
  
const redis = new Redis({  
  sentinels: [{ host: 'sentinel_ip', port: sentinel_port }],  
  name: 'mymaster',  
  role: 'slave',  
});  

Korvaa 'sentinel_ip' ja sentinel_port palvelimen IP-osoitteella ja portilla Redis Sentinel, joka valvoo pääpalvelinta ja käsittelee vikasietoa.

Monitori Redis Sentinel

Redis Sentinel on vastuussa esiintymien valvonnasta Redis ja vikasietotilanteiden käsittelystä. Asenna ja määritä Redis Sentinel erilliselle palvelimelle ja lisää sen tiedot NodeJS-sovellukseen.

Esimerkki yhteyden muodostamisesta Redis Sentinel "iorediksellä" NodeJS:ssä:

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',  
});  

Korvaa 'sentinel1_ip', sentinel1_port, 'sentinel2_ip', sentinel2_port, jne. palvelimien IP-osoitteilla ja porteilla Redis Sentinel.

Testaa Failover ja High Availability

Testaaksesi Redis replication ja high availability voit simuloida pääpalvelimen vian. Redis Sentinel pitäisi automaattisesti mainostaa yksi replikoista uudelle pääkäyttäjälle ja käsitellä vikasietoa saumattomasti.

 

Seuraamalla näitä vaiheita voit saavuttaa Redis Replication NodeJS High Availability -sovelluksessasi tietojen redundanssin ja jatkuvan toiminnan myös palvelinvikojen sattuessa.