微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Redis向键名添加无效字符

如何解决Redis向键名添加无效字符

我们在两个不同的服务器上使用 Redis

一个PHPRedis,使用 IGBINARY 作为序列化器。

PHP 7.2.x

redis

Redis Support => enabled
Redis Version => 3.1.1
Available serializers => PHP,igbinary

一个是使用 Lumen 和 predis(再次使用 IGBinary)。

PHP 7.3.x

redis

Redis Support => enabled
Redis Version => 5.3.4
Available serializers => PHP,json,igbinary

在第一台服务器上通过 Redis->zRange 检索密钥时,我们得到了正确的信息:

[1287871]=> 浮动 (23) [1299984]=> 浮动(23)

在第二台服务器上,我们得到(实际上在键名前面有奇怪的字符)

[1287871]=> 浮动(23) [1299984]=> 浮动(23)

两者都使用相同的密钥访问,所以我假设的客户端肯定有所不同?我们怎样才能让第二台服务器像第一台一样工作?

解决方法

这是由于在 Lumen 服务器上未将序列化程序设置为 IGBINARY。似乎配置中记录的“序列化程序”参数不起作用

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。