2014-02-11 2 views
9

레일 캐시의 크기를 확인하는 방법이 있습니까?레일 캐시의 크기를 확인 하시겠습니까?

의 정맥에 뭔가 : Rails.cache.size => 390 MB

내가 데이터 저장소 사이에 약간의 변화가있다 생각하지만, 지금 내가 심지어 캐시가 차지 디스크 공간을 확인하기 시작하는 방법을 모르겠어요.

답변

9

캐시 저장소와 사용하는 백엔드에 완전히 달려 있습니다.

Rails.cache.stats 
# => NoMethodError: undefined method `stats' for #<ActiveSupport::Cache::FileStore:0x007ff1cbe905b0> 

그리고 로컬 memcached를 실행하는 경우, 내가 다른 결과 세트를 얻을 :

Rails.cache.stats 
# => {"xxx.memcachier.com:11211"=>{"curr_items"=>"278", "bytes"=>"3423104", "evictions"=>"0", "total_items"=>"7373", "curr_connections"=>"7", "total_connections"=>"97", "cmd_get"=>"141674", "cmd_set"=>"7373", "cmd_delete"=>"350", "cmd_flush"=>"6", "get_hits"=>"63716", "get_misses"=>"77958", "delete_hits"=>"162", "delete_misses"=>"188", "incr_hits"=>"0", "incr_misses"=>"0", "decr_hits"=>"0", "decr_misses"=>"0"}} 

FileStore는 이러한 방법을 가지고 있지 않습니다

내 Heroku가 인스턴스 실행 memcachier에서 예입니다 :

Rails.cache.stats 
# => {"127.0.0.1:11211"=>{"pid"=>"327", "uptime"=>"517931", "time"=>"1392163858", "version"=>"1.4.16", "libevent"=>"2.0.21-stable", "pointer_size"=>"64", "rusage_user"=>"2.257386", "rusage_system"=>"4.345445", "curr_connections"=>"15", "total_connections"=>"16", "connection_structures"=>"16", "reserved_fds"=>"20", "cmd_get"=>"0", "cmd_set"=>"0", "cmd_flush"=>"0", "cmd_touch"=>"0", "get_hits"=>"0", "get_misses"=>"0", "delete_misses"=>"0", "delete_hits"=>"0", "incr_misses"=>"0", "incr_hits"=>"0", "decr_misses"=>"0", "decr_hits"=>"0", "cas_misses"=>"0", "cas_hits"=>"0", "cas_badval"=>"0", "touch_hits"=>"0", "touch_misses"=>"0", "auth_cmds"=>"0", "auth_errors"=>"0", "bytes_read"=>"48", "bytes_written"=>"30", "limit_maxbytes"=>"67108864", "accepting_conns"=>"1", "listen_disabled_num"=>"0", "threads"=>"4", "conn_yields"=>"0", "hash_power_level"=>"16", "hash_bytes"=>"524288", "hash_is_expanding"=>"0", "malloc_fails"=>"0", "bytes"=>"0", "curr_items"=>"0", "total_items"=>"0", "expired_unfetched"=>"0", "evicted_unfetched"=>"0", "evictions"=>"0", "reclaimed"=>"0"}} 
+3

FileStore 크기를 어떻게 확인합니까? – sandre89

0

@ phoet의 답변 외에도 Redis 캐시 전자 당신은 사람이 읽을 수있는 포맷을 취득하려면 다음을 사용할 수 있습니다

Rails.cache.stats["used_memory_human"] #=> 178.32M 

used_memory_human 실제로 레디 스 서버에서 INFO 명령을 실행할 때 반환 상관 없음 키가 될 수 있습니다.

관련 문제