Kufunga na High Availability Redis katika NodeJS

Ili kusanidi Redis Replication na High Availability katika NodeJS, fuata hatua hizi:

Sakinisha Redis

Kwanza, unahitaji kusanikisha Redis kwenye seva yako. Unaweza kuipakua kutoka kwa tovuti rasmi au kutumia kidhibiti cha kifurushi kama vile apt au brew.

Sanidi Redis kwa Replication

Fungua Redis faili ya usanidi(redis.conf) na ufanye mabadiliko yafuatayo:

# Enable replication  
replicaof <master_ip> <master_port>  

Badilisha <master_ip> na <master_port> uweke anwani ya IP na bandari ya Redis seva kuu.

tart Redis Replicas

Anzisha Redis matukio mengi kwenye seva au bandari tofauti, ambazo zitafanya kama nakala za bwana. Tumia faili sawa Redis ya usanidi kwa kila mfano.

Tumia Redis Client katika NodeJS

Katika programu yako ya NodeJS, tumia Redis maktaba ya mteja kama "ioredis" kuunganishwa na Redis matukio. Mteja atashughulikia kiotomatiki kushindwa na maombi ya kuelekeza kwa seva inayofaa.

Mfano wa kuunganishwa na Redis "ioredis" katika NodeJS:

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

Badilisha 'sentinel_ip' na sentinel_port kwa anwani ya IP na bandari ya Redis Sentinel seva, ambayo inafuatilia bwana na kushughulikia kushindwa.

Kufuatilia Redis Sentinel

Redis Sentinel ni wajibu wa kufuatilia Redis matukio na kushughulikia kushindwa. Sakinisha na usanidi Redis Sentinel kwenye seva tofauti, na uongeze maelezo yake katika programu ya NodeJS.

Mfano wa kuunganishwa na Redis Sentinel "ioredis" katika NodeJS:

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

Badilisha 'sentinel1_ip', sentinel1_port, 'sentinel2_ip', sentinel2_port, nk, na anwani za IP na bandari za Redis Sentinel seva.

Mtihani Failover na High Availability

Ili kujaribu Redis replication na high availability, unaweza kuiga kutofaulu kwa seva kuu. Redis Sentinel inapaswa kukuza kiotomatiki moja ya nakala kwa bwana mpya na kushughulikia kushindwa bila mshono.

 

Kwa kufuata hatua hizi, unaweza kufikia Redis Replication na High Availability katika programu yako ya NodeJS, kuhakikisha upungufu wa data na uendeshaji unaoendelea hata katika tukio la kushindwa kwa seva.