ინსტალაცია და High Availability Redis NodeJS-ში

Redis Replication NodeJS- ში დასაყენებლად High Availability, მიჰყევით ამ ნაბიჯებს:

Დაინსტალირება Redis

პირველ რიგში, თქვენ უნდა დააინსტალიროთ Redis თქვენს სერვერზე. შეგიძლიათ ჩამოტვირთოთ ის ოფიციალური ვებსაიტიდან ან გამოიყენოთ პაკეტის მენეჯერი, როგორიცაა apt ან brew.

კონფიგურაცია Redis ამისთვის Replication

გახსენით Redis კონფიგურაციის ფაილი(redis.conf) და შეიტანეთ შემდეგი ცვლილებები:

# Enable replication  
replicaof <master_ip> <master_port>  

შეცვალეთ მასტერ სერვერის IP მისამართი და <master_ip> პორტი. <master_port> Redis

ტარტის Redis რეპლიკა

დაიწყეთ მრავალი Redis ინსტანცია სხვადასხვა სერვერებზე ან პორტებზე, რომლებიც იმოქმედებენ როგორც ოსტატის ასლები. გამოიყენეთ იგივე Redis კონფიგურაციის ფაილი თითოეული ინსტანციისთვის.

გამოიყენეთ Redis Client NodeJS-ში

თქვენს NodeJS აპლიკაციაში გამოიყენეთ Redis კლიენტის ბიბლიოთეკა, როგორიცაა "ioredis", ინსტანციებთან დასაკავშირებლად Redis. კლიენტი ავტომატურად ამუშავებს მარცხისა და მარშრუტიზაციის მოთხოვნებს შესაბამის სერვერზე.

Redis NodeJS-ში "ioredis"-თან დაკავშირების მაგალითი:

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

შეცვალეთ სერვერის IP მისამართი და პორტი, რომელიც მონიტორინგს 'sentinel_ip' უწევს მასტერს და ამუშავებს შეფერხებას. sentinel_port Redis Sentinel

მონიტორი Redis Sentinel

Redis Sentinel პასუხისმგებელია Redis შემთხვევების მონიტორინგზე და წარუმატებლობის მართვაზე. დააინსტალირეთ და დააკონფიგურირეთ Redis Sentinel ცალკე სერვერზე და დაამატეთ მისი დეტალები NodeJS აპლიკაციაში.

Redis Sentinel NodeJS-ში "ioredis"-თან დაკავშირების მაგალითი:

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

შეცვალეთ 'sentinel1_ip', sentinel1_port, 'sentinel2_ip', sentinel2_port და ა.შ., სერვერების IP მისამართებით და პორტებით Redis Sentinel.

ტესტის წარუმატებლობა და High Availability

შესამოწმებლად Redis replication და high availability შეგიძლიათ სიმულაცია მოახდინოთ მასტერ სერვერის წარუმატებლობისთვის. Redis Sentinel ავტომატურად უნდა შეუწყოს ხელი ერთ-ერთ რეპლიკას ახალ მასტერს და გაუმკლავდეს ჩავარდნას შეუფერხებლად.

 

ამ ნაბიჯების დაცვით, თქვენ შეგიძლიათ მიაღწიოთ Redis Replication თქვენს High Availability NodeJS აპლიკაციას, უზრუნველყოთ მონაცემთა ჭარბი რაოდენობა და უწყვეტი მუშაობა სერვერის გაუმართაობის შემთხვევაშიც კი.