redis - 输入大字符串 (1 MB) 作为 key 的 key 会出现异常

标签 redis

根据redis的规范,该字符串的大小可以是512 MB ( link )

我尝试使用以下命令插入大约 1 MB 大小的大字符串

cat command.txt | redis-cli --pipe

其中command.txt的内容是SET k <large string>

我收到以下错误 ERR 协议(protocol)错误:内联请求太大

网络上的一点挖掘表明,reuqest 的大小受到 REDIS_INLINE_MAX_SIZE 的限制。其值固定为(1024*64)或64KB。

有什么方法可以改变这一点,或者有没有更好的方法将大字符串发送到redis

最佳答案

x-post from /r/redis

使用众多 clients 之一- 这是最简单的方法。

或者,您可以在RESP中准备有效负载然后你甚至不需要 cli - 例如: https://gist.github.com/itamarhaber/c33ab7a067483050c47d

关于redis - 输入大字符串 (1 MB) 作为 key 的 key 会出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35793087/

相关文章:

key - 如何使用 Redis 作为分布式键值存储

python - Django channel 错误 - 无法导入后端 'asgi_redis.RedisChannelLayer'

redis - Redis 中的嵌套多批量回复

caching - 实现 ICacheClient 时禁用所有缓存

ruby-on-rails - 在不重定向的情况下调用 ruby​​ 操作/方法

ruby-on-rails-4 - rails-Sidekiq-Redis : RuntimeError (nodename nor servname provided, 或未知)

ruby-on-rails - Sidekiq 无法连接到 Rails 中的 Redis

windows - Windows Redis客户端连接到Docker服务器失败

database - 使用 Redis 哈希与许多键的性能比较

php - Laravel 4.2 中用于缓存和 session 的不同 redis 数据库