Redigo извлекает старое значение из контейнера Redis Docker - PullRequest
0 голосов
/ 29 сентября 2019

Я разрабатываю веб-проект 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?

...