Bu sayfa, Redis başarısızlıklarından kaynaklanan kesintileri önlemek için Asynq'un Redis Sentinel'ı nasıl kullanacağını yapılandıracağınızı tanıtır.
Önkoşullar
Lütfen konuyu anlamak için Redis Sentinel belgelerini okuyun.
Asynq'u Redis Sentinel'ı kullanacak şekilde yapılandırma
Asynq'un Client
ve Server
'ını Redis Sentinel kullanacak şekilde yapılandırmak çok basittir. RedisFailoverClientOpt
kullanarak Redis ana düğümünün adını ve Redis Sentinel'ların adreslerini belirtin.
var redis = &asynq.RedisFailoverClientOpt{
MasterName: "mymaster",
SentinelAddrs: []string{"localhost:5000", "localhost:5001", "localhost:5002"},
}
Ardından bu istemci seçeneğini NewClient
ve NewBackground
'e ileterek Redis Sentinel kullanarak bir örnek oluşturun.
client := asynq.NewClient(redis)
// ...
srv := asynq.NewServer(redis, asynq.Config{ Concurrency: 10 })
Bu yapılandırmayla, Redis ana düğümü başarısız olduğunda Sentinel'lar failover sürecini başlatacak ve yeni ana düğüm hakkında asynq'u bilgilendirecek ve arka planda görev işleme normal şekilde devam edecektir.