لإعداد 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 الخاص بك ، مما يضمن تكرار البيانات والتشغيل المستمر حتى في حالة فشل الخادم.