ASP.NET - 분산 캐시에서 관계형 데이터를 처리하는 방법

이크발 칸

Microsoft .NET Framework 웹, 서비스 지향 아키텍처(SOA), 고성능 컴퓨팅 또는 그리드 컴퓨팅, 클라우드 컴퓨팅을 비롯한 다양한 트랜잭션이 많은 애플리케이션을 개발하는 데 널리 사용되었습니다. 이러한 모든 애플리케이션 아키텍처는 확장 가능합니다. 그러나 데이터 저장소(일반적으로 관계형 데이터베이스)에서 주요 병목 현상이 발생하여 응용 프로그램 계층에서 처리할 수 있는 증가된 트랜잭션 부하를 확장하고 처리할 수 없습니다.

결과적으로 분산 캐싱은 어떤 데이터베이스보다 훨씬 빠르게 액세스할 수 있는 메모리 내 캐시에 데이터를 캐싱할 수 있기 때문에 상당히 인기를 얻고 있습니다. 또한 분산 캐싱은 여러 캐시 서버에서 선형 확장성을 제공합니다. 선형 확장성을 통해 더 큰 트랜잭션 로드를 처리해야 하는 경우 분산 캐시 클러스터에 더 많은 캐시 서버를 추가할 수 있습니다. 트랜잭션 용량의 증분 이득은 서버를 더 추가해도 줄어들지 않습니다(X는 캐시 서버의 수이고 Y는 트랜잭션 용량인 XY 그래프의 직선입니다). 그림 1은 분산 캐싱이 일반적인 ASP.NET 또는 WCF(Windows Communication Foundation) 응용 프로그램에 적합한 방식과 선형 확장성을 제공하는 방식을 보여줍니다.

전체 기사 읽기

이 기사에서는 개발자가 데이터를 캐싱하는 동안 데이터 관계를 처리하는 방법에 대해 설명합니다.

분산 캐싱은 훌륭하지만 이것이 제시하는 한 가지 과제는 데이터 요소 간에 다양한 관계가 있는 관계형 데이터를 캐시하는 방법입니다. 이는 분산 캐시가 "키"가 캐시된 항목을 고유하게 식별하고 "값"이 데이터 또는 객체인 간단한 해시테이블과 유사한 (키, 값) 인터페이스를 제공하기 때문입니다. 그러나 귀하의 응용 프로그램에는 상속, 집계 및 기타 유형의 관계가 포함된 복잡한 도메인 개체 모델이 있을 수 있습니다.

또한 분산 캐시는 캐시된 개별 항목을 별도로 저장하는데, 이는 서로 다른 테이블 간에 관계가 있는 데이터베이스와 다릅니다. 일반적으로 일반적인 분산 캐시에서는 서로 다른 캐시 항목 간에 관계가 없습니다. 이는 .NET 애플리케이션 개발자에게 어려운 과제입니다. 즉, 캐시에서 관계를 올바르게 처리하는 동시에 분산 캐싱을 활용할 수 있는지 확인하기 위해 애플리케이션 내에서 많은 관계 정보를 추적해야 하는 과제에 직면해 있습니다.

전체 기사 읽기
© 저작권 Alachisoft 2002 - . 판권 소유. NCache 는 Diyatech Corp.의 등록상표입니다.