Я использую Redis-кеш для хранения данных, подлежащих кешированию.Тип данных, которые будут храниться в качестве ключа, имеет числовой тип.Redis автоматически приводит значение к строковому типу.
127.0.0.1:6379> sismember def 34
(integer) 1
127.0.0.1:6379> sismember def 34.
(integer) 0
127.0.0.1:6379> sismember def 34.0
(integer) 0
127.0.0.1:6379> sismember def 3.4
(integer) 1
127.0.0.1:6379> smembers def 34.0
(error) ERR wrong number of arguments for 'smembers' command
127.0.0.1:6379> sadd def 34.0
(integer) 1
127.0.0.1:6379> smembers def
1) "34"
2) "34.0"
3) "3.4"
Я знаю, что этот вопрос, связанный с вопросом, который я задаю, уже задан на Разница между хранением целых чисел и строк в Redis , но он не имеет удовлетворительного ответа.
Итак, мой вопрос в том, что Redis не поддерживает хранение целых чисел в качестве ключа, хотя они являются неизменяемыми?Есть ли какая-либо производительная / архитектурная причина, по которой теперь в качестве ключей в redis можно использовать неустраиваемые неизменяемые значения.
Заранее спасибо.