Нужно чтобы Redis сервер и все сервера с которых к нему обращаются находились в одной временной зоне. Иначе EXPIRE (SETEX) не будет работать корректно:
redis web-d11:6379> TTL orderlock-1421615
(integer) -1
redis web-d11:6379> GET orderlock-1421615
"admin"
redis web-d11:6379> TTL orderlock-1421615
(integer) -1
redis web-d11:6379> GET orderlock-1421615
"admin"
Как вы видите TTL уже истек, но операция GET все равно возвращает значение. Это говорит о том что внутри себя Redis хранит TTL в виде абсолютного значения.
Чтобы изменить часовой пояс сервера(ubuntu):
sudo dpkg-reconfigure tzdata
Комментариев нет:
Отправить комментарий