0

때때로 연결이 끊어진 다운 스트림 시스템에서 데이터 캐싱을위한 아키텍처 패턴이나 솔루션이 있습니까?간헐적 인 다운 스트림 시스템의 데이터 캐싱

리소스를 처리하는 .Net WebAPI 2 REST API가 보장 된 가동 시간이없는 시스템에서 읽을 필요가있는 상황에서 서버 측에서 데이터를 캐시 할 수있는 좋은 패턴/솔루션은 무엇입니까? 시스템을 사용할 수 없습니까?

기존에 존재해야하는 솔루션을 다시 발명하기 전에이 문제에 대한 .Net 솔루션이 있습니까?

나는 아래의 프로세스 다이어그램과 비슷한 것을 생각하고 있었지만, 다른 솔루션을보고 싶었습니다.

enter image description here


편집 : 업스트림 시스템은 REST API를하고 SAP의 RFC API를 사용하여 액세스하는 SAP 시스템이다.

+2

당신이 정말로 [캐시]을 찾고 있지 않기 때문에 현재 문제를해야 할 것 [1] , 연결이 끊긴 복제본을 찾고 있습니다. 캐시는 항상 실수가 발생할 수있는 성능 향상 솔루션입니다. 연결이 끊긴 복제본을 찾고 있습니다. [1] : http://en.wikipedia.org/wiki/Cache_%28computing%29 –

+2

나는 당신이 소스 코드에 대한 자세한 내용을 제공 할 수 있다면 즉시 사용 가능한 솔루션을 찾는 데 더 많은 행운이있을 것이라고 생각합니다. 데이터. 예를 들어 타사 시스템이 RDMS 인 경우 좋은 솔루션이 많이 있습니다. 타사 시스템이 파일 시스템 인 경우 다른 좋은 솔루션이 있습니다. 타사 시스템이 웹 사이트 인 경우 다른 솔루션을 사용할 수 있습니다. –

+0

질문을 업데이트했습니다. 모든 업스트림 데이터 소스에 사용할 수있는 일반적인 솔루션을 찾고 있습니다. 나는 이것이 '캐시'보다 로컬 복제본에 더 가깝다는 것에 동의한다. 데이터가 '캐시'에서 사용할 수없는 경우 업스트림 시스템이 다운되었을 때 돌아 오지 않는 것이 세상 끝이 아니라 일부 결과를 제공 할 수있는 것이 아무 것도없는 것보다 낫습니다. – Darbio

답변

1

SAP 연결이 끊어진 복제본 시스템에 대한 지식이 없습니다. Varnish는 유예 기간 처리 기능을 통해 백엔드 시스템 다운을 처리 할 수있는 기능을 제공하는 뛰어난 기본 제공 나머지 캐시입니다.

이렇게하면 전체 저장소로 작동하지 않으므로 "캐시 된"데이터는 사용할 수 없습니다. 그것은 꽤 똑바로 구현처럼 보이지만, 아마뿐만 아니라 (좋은 부작용) 귀하의 성능을 향상시킬 것입니다.

각 요청에 대한 복제본을 실제로 작성하기 때문에 원하는 대상이 아니므로이 대상으로 폴백 할 수 있습니다.

이는 REST 또는 SAP 데이터 중 하나를 위해 일할 수있는 또 다른 꽤 좋은 해결책처럼 보인다 Generating Occasionally Disconnected WPF App