2013-04-21 2 views
4

제 생각에 Memcached는 (기본 구성에서는) 잠금이 없으므로 어떤 클라이언트도 다른 클라이언트의 작업을 방해 할 수 없습니다. 그렇다면 Memcached는 동시에 두 개 이상의 클라이언트가 동일한 객체를 업데이트하려고 할 때 어떻게 처리합니까?동시 업데이트가 Memcached에서 어떻게 처리됩니까?

Memcached는 여러 버전의 객체를 어떻게 처리합니까? 업데이트가 마지막으로 완료된 캐시를 가져 와서 다른 버전을 캐시에서 제거하기 만하면됩니까? 데이터베이스가 Memcached 서버에 캐시 된 개체를 적극적으로 무효화합니까?

답변

2

Memcached는 개체의 마지막 버전 만 보유합니다. 당신이 얻고, 수정하고, 넣는다면 당신은 put이 get과 같은 값으로 적용된다는 보장을하지 않습니다. 동기화가 필요한 경우 CAS 작업 (gets, cas)을 사용할 수 있습니다.

관련 문제