Я использую redis для хранения информации о пользователях.Как пропустить ключ карты в REDIS?
я установить информацию многие используют под ключ «пользователь», как это:
"hset user userid1234 {...}".
как сделать ключ «userid1234» в пользовательском истекает через несколько секунд позже?
есть несколько команд типа «expire», которые могут устанавливать только тайм-аут пользователя , но я не хочу, чтобы все в нем истекало.
Есть ли некоторые решения?
От всего, что я могу сказать, это невозможно. Если эта функция важна для вас, вам, возможно, придется пересмотреть способ хранения информации. Например. вместо «пользователь hset userid1234 {...}« вы могли бы «установить пользователя: 1234 {...}» и установить ttl. –
это нормально, но не так удобно использовать «user: 1234 {..}». Я должен использовать ключевого пользователя *, чтобы получить онлайн-пользователей. Нет таких команд, как hlen, который является O (1). Является ли моя модель данных странной? Я думаю, что команды, подобные «hexpire amap afiled seconds», полезны. – user2219372
Вы можете попытаться индексировать свои элементы в другом zset (со временем как оценка), а затем периодически проверять его и вручную удалять элементы «expired» в сценарии lua, например. – zenbeni