این صفحه نحوه پیکربندی Asynq برای استفاده از Redis Sentinel را برای جلوگیری از قطعی Redis به علت خطاهای Redis معرفی می‌کند.

پیش‌نیازها

لطفا ابتدا مستندات Redis Sentinel را بخوانید تا موضوع را درک کنید.

پیکربندی Asynq برای استفاده از Redis Sentinels

پیکربندی asynq's Client و Server برای استفاده از 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 فرآیند failover را آغاز کرده و از گره اصلی جدید به asynq خبر می دهند و پردازش کارهای پس زمینه به طور نرمال ادامه خواهد یافت.