[REDIS] Resque와 레일와 레디 스 : ERR 명령이 허용되지 않는 경우에 사용되는 메모리> 'maxmemory'
REDISResque와 레일와 레디 스 : ERR 명령이 허용되지 않는 경우에 사용되는 메모리> 'maxmemory'
레디 스를 사용하는 경우, 그것은 나에게 오류를 제공합니다 :
ERR command not allowed when used memory > 'maxmemory'
[정보] 명령을 보여준다 :
redis 127.0.0.1:6379> info
redis_version:2.4.10
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:64
multiplexing_api:kqueue
gcc_version:4.2.1
process_id:1881
uptime_in_seconds:116
uptime_in_days:0
lru_clock:1222663
used_cpu_sys:0.04
used_cpu_user:0.04
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
connected_clients:1
connected_slaves:0
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
used_memory:930912
used_memory_human:909.09K
used_memory_rss:1269760
used_memory_peak:931408
used_memory_peak_human:909.58K
mem_fragmentation_ratio:1.36
mem_allocator:libc
loading:0
aof_enabled:0
changes_since_last_save:4
bgsave_in_progress:0
last_save_time:1333432389
bgrewriteaof_in_progress:0
total_connections_received:1
total_commands_processed:2
expired_keys:0
evicted_keys:0
keyspace_hits:0
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:0
vm_enabled:0
role:master
used_memory 높은인가? 나는 완전한 레디 스 멍청한 놈입니다. 그렇다면, 어떻게이 문제가 발생 않으며, 여기에서 어떻게 진행해야합니까? 어떤 도움이 크게 인식되어 있으므로 이와 같은 오류가 전체 (Heroku가) 생산에서 발생이다. 감사합니다.
해결법
-
==============================
1.maxmemory 한계에 도달했을 때이 메시지가 리턴됩니다. 당신은 전류 제한 다음 명령을 사용하는 것입니다 확인할 수 있습니다 :
maxmemory 한계에 도달했을 때이 메시지가 리턴됩니다. 당신은 전류 제한 다음 명령을 사용하는 것입니다 확인할 수 있습니다 :
redis 127.0.0.1:6379> config get maxmemory 1) "maxmemory" 2) "128000000"
결과는 바이트입니다.
당신은 maxmemory 매개 변수에 1734K를 설정해야합니다, 당신은이 제한을 유용한 데이터의 1MB의 저장하고 시행 할 계획 그렇다면, (리눅스)의 메모리 710킬로바이트에 대한 빈 레디 스 인스턴스 사용을 유의하시기 바랍니다. 구성 파일에서 maxmemory 설정을 사용하면 K, M, G 접미사를 사용하는 경우를 제외하고, 바이트입니다.
메모리에 레디 스 저장 모든 (그것은 결코 디스크에 데이터를 유출하지 않습니다), 당신의 Resque 큐의 그래서 모든 콘텐츠 맞게 있습니다. 몇 MB는 Resque 엔진 매우 낮은 것으로 보인다.
당신은 당신이 선택하는 Heroku가 옵션을 지정하지 않은, 그러나 나의 이해는 레디 스에 가서 "나노"옵션 (무료 하나) 제한 5메가바이트입니다.
-
==============================
2.디디에하여 멋진 대답이 그것을 높이기 위해 단지 단계는 다음과 같습니다
디디에하여 멋진 대답이 그것을 높이기 위해 단지 단계는 다음과 같습니다
redis-cli 127.0.0.1:6379> config get maxmemory 1) "maxmemory" 2) "67108864" # (67mb) this will be different in your case
이것은을 변경하는 방법입니다 :
127.0.0.1:6379> config set maxmemory 100mb OK 127.0.0.1:6379> config set maxmemory-policy allkeys-lru OK 127.0.0.1:6379> config get maxmemory 1) "maxmemory" 2) "104857600"
from https://stackoverflow.com/questions/9987832/redis-with-resque-and-rails-err-command-not-allowed-when-used-memory-maxmemo by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] 레디 스에 쿼리? (0) | 2020.01.13 |
---|---|
[REDIS] 어떻게 노드를 사용하여 레디 스에서 이진 객체를 저장? (0) | 2020.01.13 |
[REDIS] StackExchange.Redis와 StackExchange.Redis.StrongName의 차이점은 무엇입니까? (0) | 2020.01.13 |
[REDIS] 내 클러스터 Node.js를 / socket.io / 레디 스 펍 / 하위 응용 프로그램에서 중복 메시지를 수신하고 있습니다 (0) | 2020.01.13 |
[REDIS] (채팅 응용 프로그램) Resque + 레디 스과 함께 ActionController :: 라이브를 사용하는 방법 (0) | 2020.01.13 |