내 웹 사이트에 캐싱 시스템 주입을 계획하고 있으며 다른 레이어 (데이터, 프레젠테이션 및 다른 곳에있을 수도 있음)에서 사용할 것입니다. AWS의 스택 램프 및 인프라 스트럭처의 100 % 클라우드이므로 자연 선택은 Amazon Elasticache (memcached의 관리 설치)라고 생각했습니다. 하지만 ...memcached 사용 패턴
놀랍게도 - 나를 위해 - 나는 memcached가 의존성 관리가 완전히 부족하다는 것을 발견했습니다. 나는 ASP.Net 캐시 SqlDependency 또는 FileDependency와 같은 "고급"것들을 필요로하지 않지만 memcached는 쉽게 다른 키 종속성을 제공하지 않습니다. 무효화 프로세스를 크게 단순화하는 종속성 트리를 구축하는 데는 유용합니다.
memcached가 많은 복잡한 시스템에서 사용되는 것을 알고 있으므로, 제가 누락 된 것이 있습니까? 이 부족함을 부적절하게 만드는 사용 패턴이 있습니까? 질문으로
감사
UPDATE , 나는 내가
질문 (캐시 따라서 탄성)에 memcached의 예를 바탕으로dependency = 'ROOT_KEY';
cache:set(dependency, 0, NEVER_EXPIRE);
expire = 600;
cache:set('key1', obj1, expire, dependency);
cache:set('key2', obj2, expire, dependency);
...
cache:set('keyN', objN, expire, dependency);
//later, when I have to invalidate
cache:remove(dependency); //this will cause all keyX to be invalidated too
응용 프로그램에서 캐시와 어떻게 상호 작용할 계획입니까? 나는 "다른 핵심 의존성"이 의미하는 것을 따르지 않을 것이라고 생각합니다. –
일부 의사 코드로 질문을 업데이트했습니다. – MatteoSp