我正在写一个JAR文件,它从Oracle数据库中获取大量数据并存储在Redis中。细节被正确地存储,但是我在jar中定义的set key和hash key在redis db中受到限制。应该有近200个Hash和300个set keys。但是,在给出redis的密钥时,我只得到了29个密钥。如何增加redis内存或hash的限制,或设置密钥存储大小,请帮助您。
注意:我在redis.conf文件中手动更改了hash-max-zipmap-entries 1024hash-max-zipmap-value64。但是,它并没有反映出来。它在哪里需要更改?
发布于 2012-10-29 18:41:17
除了内存的大小(检查maxmemory和maxmemory-policy参数)之外,您可以在Redis实例中放置的集合或散列键的数量没有限制。
hash-max-zipmap- memory参数是完全无关的:它只控制内存优化。
我建议使用MONITOR命令来检查哪些查询被发送到Redis实例。
发布于 2012-10-30 04:48:32
hash-max-zipmap-value使散列键值对系统处于redis优化状态,因为在这些散列中对键的搜索遵循分期N,因此较长的键反过来会增加系统的等待时间。
这些设置在redis.conf中可用。
如果输入的键多于指定的数目,则散列键值对将在内部被转换为基本键值对结构,从而将不能在存储器中提供散列所提供的优势。
https://stackoverflow.com/questions/13118270
复制相似问题