Я разрабатываю веб-проект golang с Redigo для подключения к контейнеру redis docker .
Пока веб-приложение golang находится в рабочем состоянии, яизменил значение ключа redis с помощью SET MyFlag true
в redis-cli .Но это не отражается в моем веб-приложении.Когда MyFlag
выбирается с использованием flag, err := redis.Bool(conn.Do("GET", "MyFlag"))
, он возвращает старое значение.
Но после перезапуска веб-приложения та же команда выбирает новое значение.
conn
извлекается из пула соединений Redis.Это конфигурация для пул redis
redisPool = &redis.Pool{
MaxIdle: 5,
IdleTimeout: 240 * time.Second,
MaxActive: 10,
Wait: true,
Dial: func() (redis.Conn, error) {
c, err := redis.Dial("tcp", db.GetUrl())
if err != nil {
return nil, err
}
password := db.GetPassword()
if password != "" {
if _, err := c.Do("AUTH", password); err != nil {
_ = c.Close()
return nil, err
}
}
return c, nil
},
}
Это проблема кэширования в Redis / Redigo / Docker?