هذه الصفحة تقدم كيفية تكوين Asynq لاستخدام Redis Sentinel لتجنب توقف الخدمة الناجم عن فشل Redis.

المتطلبات الأساسية

يرجى قراءة الوثائق حول Redis Sentinel لفهم الموضوع.

تكوين Asynq لاستخدام Redis Sentinels

من السهل جدًا تكوين Client وServer في asynq لاستخدام Redis Sentinel. استخدم RedisFailoverClientOpt لتحديد اسم عقدة Redis الرئيسية وعناوين Redis Sentinels.

var redis = &asynq.RedisFailoverClientOpt{
    MasterName:    "mymaster",
    SentinelAddrs: []string{"localhost:5000", "localhost:5001", "localhost:5002"},
}

ثم قم بتمرير هذا الخيار للعميل NewClient وNewBackground لإنشاء مثيل باستخدام Redis Sentinels.

client := asynq.NewClient(redis)

// ...

srv := asynq.NewServer(redis, asynq.Config{ Concurrency: 10 })

بهذا التكوين، عند فشل عقدة Redis الرئيسية، ستقوم Sentinels ببدء عملية فشل التحويل وإخطار asynq بعقدة الرئيسية الجديدة، وسيستمر معالجة المهام الخلفية في العمل بشكل طبيعي.