각 키마다 다른 TTL 값을 저장해야합니다.Redis - 정규식과 일치하는 키의 값을 얻습니다.
예 - val1과 (만료 시간 : 10) - XXXX, 값, 을 val2 (만료 시간 : 20)
옵션 1 : 내 가장 좋은 방법이 될 수있다 : 사용 해쉬/회원 당 만료와 함께 설정합니다.
불행하게도 Redis의 containers
(목록, 해시, 세트 및 정렬 집합)은 이전에 여러 번 요청되었지만 구성원 당 만료를 지원하지 않습니다.
옵션 2 : 그래서 나는 이런 식으로 뭔가를해야했다 :
SETEX의 XXXX : 0 10 val1과
SETEX의 XXXX : 1 ~ 20을 val2
자, 만료되지 않은 키를 XXXX로 시작하는 모든 값을 가져 오려고합니다.
그래서 나는 노력이 :127.0.0.1:6379> keys XXXX:*
1) "XXXX:0"
2) "XXXX:1"
하지만이 값이 아닌 키를 얻을 싶어!
옵션 3 : 차라리 키에 값을 넣는 것보다 그것을 할 수있는 방법 :
SETEX XXXX:val1 10 val1
SETEX XXXX:val2 20 val2
127.0.0.1:6379> keys XXXX:*
1) "XXXX:val1"
2) "XXXX:val2"
그것은 내 마지막 옵션이 될 것입니다 .. 나는 :
후 문자열을해야합니다 ..
옵션 1 (대체)을 구현하는 방법이나 더 나은 방법을 사용하여 적어도 옵션 2를 구현하는 방법은 무엇입니까?
제한 사항은 단일 명령으로 수행해야한다는 것입니다. – Jahaja
예. 키가 많아서 각 키별로 값을 얻고 싶지 않습니다. 성능 문제가 될 수 있습니다. – user2503775
이를 달성 할 수있는 방법이 있어야합니다. – user2503775