التثبيت High Availability Redis وفي NodeJS

لإعداد NodeJS Redis Replication وفيه High Availability ، اتبع الخطوات التالية:

ثَبَّتَ Redis

أولاً ، تحتاج إلى التثبيت Redis على الخادم الخاص بك. يمكنك تنزيله من الموقع الرسمي أو استخدام مدير الحزم مثل apt أو brew.

تكوين Redis ل Replication

افتح Redis ملف التكوين(redis.conf) وقم بإجراء التغييرات التالية:

# Enable replication  
replicaof <master_ip> <master_port>  

استبدل <master_ip> وعنوان <master_port> IP ومنفذ الخادم Redis الرئيسي.

Redis لاذع النسخ المتماثلة

ابدأ Redis مثيلات متعددة على خوادم أو منافذ مختلفة ، والتي ستكون بمثابة نسخ متماثلة للسيد الرئيسي. استخدم نفس Redis ملف التكوين لكل مثيل.

استخدم Redis Client في NodeJS

في تطبيق NodeJS الخاص بك ، استخدم Redis مكتبة العميل مثل "ioredis" للاتصال بالمثيلات Redis. سيتعامل العميل تلقائيًا مع طلبات تجاوز الفشل والتوجيه إلى الخادم المناسب.

مثال على الاتصال بـ Redis "ioredis" في NodeJS:

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

استبدل 'sentinel_ip' وعنوان sentinel_port IP ومنفذ الخادم Redis Sentinel ، الذي يراقب الخادم الرئيسي ويتعامل مع تجاوز الفشل.

شاشة Redis Sentinel

Redis Sentinel مسؤول عن مراقبة Redis الحالات ومعالجة تجاوز الفشل. قم بالتثبيت والتكوين Redis Sentinel على خادم منفصل ، وإضافة تفاصيله في تطبيق NodeJS.

مثال على الاتصال بـ Redis Sentinel "ioredis" في 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',  
});  

استبدل 'sentinel1_ip' ، sentinel1_port ، 'sentinel2_ip' ، sentinel2_port وما إلى ذلك ، بعناوين IP ومنافذ الخوادم Redis Sentinel.

اختبار تجاوز الفشل و High Availability

للاختبار Redis replication ، high availability يمكنك محاكاة فشل الخادم الرئيسي. Redis Sentinel يجب أن تقوم تلقائيًا بترقية إحدى النسخ المتماثلة إلى النسخة الرئيسية الجديدة والتعامل مع تجاوز الفشل بسلاسة.

 

باتباع هذه الخطوات ، يمكنك تحقيق Redis Replication وفي High Availability تطبيق NodeJS الخاص بك ، مما يضمن تكرار البيانات والتشغيل المستمر حتى في حالة فشل الخادم.