2014-12-31 2 views

답변

1

캐싱에 사용하는 항목과 원하는 캐쉬 종류에 따라 다릅니다. 캐시 유형에 관계없이 일반적인 절차는 키/암호를 캐시 키의 일부로 사용하는 것입니다.

예를 들어, 메모를 사용합니다.

cache = {} 
cache["foo-#{key}:{secret}"] ||= Foo::API::Client.new(key, secret) 

모든 클래스 또는 메소드를 래핑 할 수 있습니다. 당신은 파일 캐시 또는 memcached와 캐시와 같은 외부 캐시를 원하는 경우

def client(key, secret) 
    @clients ||= {} 
    @clients["client-#{key}:{secret}"] ||= Foo::API::Client.new(key, secret) 
end 

, 단순히 동일한 기술을 채택하고 키와 비밀번호를 사용하여 캐시 키를 구성한다.

키와 암호가 "secret"문자열 인 경우 SHA 또는 MD5 해시를 계산하여이를 명확한 값이 아닌 키로 사용할 수 있습니다.

관련 문제