Cache_fu 플러그 인 사용 방법
Chris 는 게 임 스 팟 에서 일 했 었 다. 그 는 여기 서 게임 에 대해 이야기 했다.지난 1 년 간 당 에 서 는 수많은 젊은이 들 이 끊임없이 이 사 이 트 를 경신 하고 있 지만 이 사 이 트 는 여전히 강 세 를 보이 고 있다.그들 은 매일 50m 페이지 를 처리 해 야 하 며 다운 이 떨 어 지지 않 았 다.그들 은 Memcache 로 이 정 도 를 해 냈 다.
Memcache 는 분포 식 hash 로 Livesournal 에서 개발 되 었 습 니 다.
Memcache 를 선택 하 시 겠 습 니까?
Rails and Memcache
Fragments, Actions, Sessions, Objects 캐 시 를 사용 하면 다음 을 사용 할 수 있 습 니 다.
memcache-client
(by Robot-coop guys/Eric Hodel). Marshal.unload is 40 times faster than Object.new/loading from the database. ... 혹은...
cache_fu
혹은
acts_as_cached 2.0。 Objects, YAML (config/memcached.yml). : names. IPs, BIND .
get_cache
expire_cache
당신 에 게 필요 한 것 은 이것 뿐 입 니 다. - 당신 은 set 를 사용 합 니 다.cache, 플러그 인 을 어떻게 바 꾸 는 지 잘 모 를 수도 있 습 니 다.after save 갈고리 에 캐 시 실효 메커니즘 을 사용 해 야 합 니 다.예 를 들 면:
class
Presentation
<
ActiveRecord
::
Base
acts_as_cached
after_save
:expire_cache
end
또한:
class Presentation < ActiveRecord :: Base
acts_as_cached :conditions => ' published = 1 '
end
Cached - scoped - finders.이 용법 은 사용자 정의 find 방법 을 model 에 옮 긴 다음 캐 시 메커니즘, cache 를 포장 합 니 다.fu 플러그 인 은 AR:: Base 방법 을 통 해 이 기능 을 유기 적 으로 결합 합 니 다.
class
Topic
<
ActiveRecord
::
Base
def
self.weekly_popular
Topic
.
find
:all
,
...
end
end
Topic
.
cached
(
:weekly_popular
)
사용
alias_method_chain date :
def
self.cache_key_with_date
(
id
)
...
end
class
<<
self
alias_method_chain
:cache_key
,
:date
end
ID 로 캐 시 불 러 오기:
Topic.find(1, 2, 3) Topic.get_cache(1, 2, 3), memcached, 。
user_ids
=
@topic
.
posts
.
map
(&
:user_id
).
uniq
@users
=
User
.
get_cache
(
user_ids
)
캐 시 연결 도 가능 하기 때문에 memcache 를 통 해 연결 을 탐색 할 수 있 습 니 다.
캐 시 다시 쓰기class
ApplicationController
<
ActionController
::
Base
before_filter
:set_cache_override
def
set_cache_override
ActsAsCached
.
skip_cache_gets
=
!!
params
[
:skip_cache
]
end
end
reset_cache: 캐 시 리 셋 (이 부분 은 어떻게 번역 해 야 할 지 모 르 겠 습 니 다. reset_cache
: 느 리 고, uncached operations can sometimes queue up and wedge a site. 대신, request 를 완료 할 때 cache resets 를 실행 합 니 다. expiring before. That way, requests that continue to pile up 은 리 빌 드 가 완 료 될 때 까지 cached copy 를 사용 합 니 다.)class
Presentation
<
ActiveRecord
::
Base
after_save
:reset_cache
end
버 전: 코드 를 수정 한 후 캐 시 방식class
Presentation
<
ActiveRecord
::
Base
acts_as_cached
:version
=>
1
end
배치: Chris 푸 시 키 는 Memcache 서버 의 효율 적 인 작업 을 위해 Monit 배 치 를 할 수 있 습 니 다.(번역자 주: 다른 서버 의 효율 이 어떤 지 모 르 겠 습 니 다)
livketama: 캐 시 를 실효 성 없 이 Memcache 서버 를 재배 치 합 니 다.
질문: 페이지 캐 싱?Nginx 는 rails 호스트 이외 의 로 컬 Memcache page caching 을 사용 합 니 다.
후기: 본인 이 최근 에 cache 를 연구 하고 있 기 때 문 입 니 다.fu 플러그 인 사용 방법, 이 글 은 지속 적 으로 업 데 이 트 됩 니 다. 주목 하 시기 바 랍 니 다.이 플러그 인 에 대한 이 해 를 발표 하 는 것 을 환영 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【swift4】 image를 cache화한다Swift4에서 image를 cache화하는 정보가 좀처럼 발견되지 않았기 때문에, 기재해 가고 싶습니다. 만약 실수등이 있으면, 지적해 주시면 기쁩니다! 먼저 iOS에서는 NSCache 클래스를 사용하여 캐시를 수...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.