2014-09-19 4 views
1

저는 Breeze.js에 대해 한동안 읽었습니다. 정말 대단한 것 같지만 서버 측 캐싱에 대한 한 가지 우려가 있습니다.서버 측 캐싱과 함께 Breeze.js 사용하기

클라이언트 측 캐싱 엔티티의 이점을 이해할 수 있지만 트래픽이 많은 사이트의 경우에는 충분하지 않을 수 있습니다.

내가 회사 테이블을 가지고 있고 내 앱이 클라이언트 측 캐싱을하는 것이 좋습니다.하지만 10,000 명의 사용자가 내 사이트를 처음 방문하는 경우 데이터베이스에 10,000 회의 방문이 발생하지만, 첫 번째 사용자가 서버에 캐싱하는 경우 첫 번째 사용자에 대한 단일 데이터베이스 호출과 반대입니다.

Breeze는 데이터베이스에 직접 액세스 할 때만 실제로 작동한다고 말할 수 있습니다. 내 데이터베이스와 Breeze 클라이언트 측 사이에 캐싱을 처리하는 OData 서비스가 있다고 상상할 수도 있지만, 이는 내 코드에서 특히 클라이언트에 메타 데이터를 가져 오는 데 필요한 추가 인프라가 필요하다고 생각합니다.

Breeze.js가 기본적으로 서버 측 캐싱에서 제대로 작동하지 않는다고 가정 할 때 나는 잘못 되었습니까?

답변

2

좋은 소식은 서버 쪽 캐싱이 좋은 옵션이라는 것입니다. Breeze는 HTTP 및 JSON을 사용하는 모든 리소스와 잘 작동하는 클라이언트 측 기술입니다. 데이터베이스 일 필요는 없습니다.

메타 데이터는 전혀 문제가되지 않습니다. 우리의 메타 데이터 문서는 메타 데이터를 정적 자원으로 다루는 몇 가지 기술을 설명합니다. 예를 들어, JSON을 JavaScript 파일로 쉽게 가져 와서 클라이언트에 가져올 수 있습니다. JavaScript 파일을 CDN에 저장하십시오.

서버 API입니다. 사용률이 높고 볼륨이 낮은 특정 모음 (예 : 드롭 상자를 채우는 귀찮은 참조 값)을 캐시하면 Redis의 한 조각이됩니다.

모든 서버 측 캐싱 전략과 마찬가지로 캐시 할 모음, 캐시 실패 이후의 위치 및 업데이트 처리 방법을 계획해야합니다.

샘플을 초안 할 시간이 있었으면합니다. 어쩌면 당신은 그것을 시도하고 나머지 우리와 공유 할 수 있습니다.

+0

저는 실제로 레디 스를 들여다 보지 않았습니다. 나는 그 총을 줘야 할 것이다. 나는 메타 데이터를 둘러싼 나의 관심이 그것이 생성되는 메커니즘이라고 생각한다. 지금은 캐시가 메타 데이터를 생성 할 수있는 방법이 없지만 백엔드 아키텍처를 고려할 때 데이터를 파이프하는 것이 간단해야합니다. 나는 너의 제안을 살펴볼 것이다. 고맙습니다. –

관련 문제