Computer >> 컴퓨터 >  >> 프로그램 작성 >> Redis

Caching at Scale 입문서의 캐싱 소개

34년 이상의 SaaS 애플리케이션 설계 및 구축 경험을 바탕으로 리 애치슨 은 애플리케이션 현대화, 클라우드 마이그레이션, DevOps 혁신 분야에서 인정받는 리더이자 전문가입니다. 그의 세 권의 책, 70개 이상의 출판된 기사 또는 100개 이상의 프레젠테이션, 수업 및 세미나를 통해 전시된 그의 전문 지식을 읽거나 볼 수 있습니다.

당신과 당신의 팀은 사람들의 관심을 끌 만한 애플리케이션을 개발했습니다. 입소문이 퍼지고 인기가 치솟지만 운영 비용이 치솟기 시작하고 앱이 계속 다운되고 고객은 상상도 할 수 없는 일을 합니다.

고객 기반이 늘어남에 따라 비용이 증가하지 않도록 하려면 어떻게 해야 합니까? 확장에 대한 도전은 환영하지만 더 높은 장애 조치 비율과 유지 관리 비용 증가를 위해 성장을 희생할 수도 없습니다.

한 가지는 확실합니다. 애플리케이션 캐시가 필요합니다.

캐시란 무엇입니까?

"캐시는 원래 데이터 소스보다 더 빠르고 효율적으로 액세스할 수 있는 데이터 저장 구성 요소입니다."

Lee Atchison, Redis를 사용한 대규모 캐싱

데이터 가져오기 요청이 있을 때 캐시는 해당 데이터의 복사본을 실시간으로 제공합니다. 그리고 점점 더 많은 고객이 앱을 사용하기 시작함에 따라 기본 데이터 저장소를 오가며 증가하는 데이터 요청을 처리할 수 있는 고급 애플리케이션 아키텍처가 필요합니다.

Lee는 이를 아주 간단하게 요약합니다. "현대 사회는 현대 응용 프로그램을 요구합니다."

고객이 더 나은 성능을 요구한다는 것은 비밀이 아닙니다. 애플리케이션이 고객의 기대에 부응하지 못하는 경우 해당 고객은 경쟁업체를 떠나 경쟁업체로 몰려들 것입니다.

빠르고 사용하기 쉬운 모든 응용 프로그램 뒤에는 수많은 움직이는 부품이 있습니다. Lee가 말했듯이 "오늘날의 애플리케이션은 많은 양의 데이터를 처리하고, 복잡한 작업을 수행하고, 데이터 요소 간의 수많은 관계를 유지하고, 트랜잭션 간의 고유하고 이질적인 상태에서 작동할 수 있어야 합니다."

두통은 복잡한 애플리케이션 내에서 발생하며 이를 최소화하기 위해 캐시가 있습니다.

Redis로 대규모 캐싱 읽기

Redis를 사용한 대규모 캐싱 , Lee는 캐싱이 무엇인지, 왜 그리고 언제 필요한지, 애플리케이션이 가능한 최고의 성능을 달성하는 데 도움이 되는 캐싱 사례를 소개합니다.

Caching at Scale 입문서의 캐싱 소개

사용자가 서비스에서 데이터를 요청하면 상점에서 해당 데이터를 획득한 다음 해당 정보를 소비자에게 다시 전달하는 작업이 수행됩니다. 그러나 Lee는 이러한 작업이 특히 동일한 데이터를 반복해서 검색하는 경우 리소스와 시간이 많이 소요될 수 있다고 말합니다.

“대신 캐시를 사용하면 복잡한 작업이 처음 수행될 때 결과가 소비자에게 반환되고 결과의 복사본이 캐시에 저장됩니다. 다음에 데이터가 필요할 때 복잡한 작업을 다시 수행하는 대신 캐시에서 직접 결과를 가져와 더 적은 리소스를 사용하여 더 빠르게 소비자에게 반환할 수 있습니다."

캐싱 수정 사항—완벽하지 않은 이유

캐싱은 만능 데이터 저장소가 아닙니다. 애플리케이션 아키텍처는 특히 앱의 크기 또는 업계 사용 사례로 인해 전반적으로 다양합니다. 그러나 Lee는 캐싱이 개선에 도움이 되는 네 가지 주요 기능이 있다고 말합니다.

  • 성능 
  • 확장
  • 리소스 최적화
  • 편의성과 가용성

그렇다고 캐시를 구현해도 자동으로 제공되는 것은 아닙니다.

Lee는 "대부분의 경우 캐싱은 가치를 추가하지 않을 수 있으며 일부 경우에는 캐싱이 실제로 성능을 저하시킬 수 있습니다"라고 말합니다. 그는 세 가지 잠재적인 문제를 제기합니다.

  1. 캐싱으로 인해 애플리케이션이 대상 작업의 원하는 부작용을 실행하지 못할 수 있습니다.
  2. 캐시의 데이터 불일치
  3. 캐시 성능 저하

Lee는 캐시가 유용하려면 특정 변수가 참이어야 한다고 말합니다(규칙 목록은 전자책 8페이지 참조). "캐시가 효과적이려면 애플리케이션 또는 데이터 소스에서 데이터 액세스에 대한 통계적 분포를 잘 이해해야 합니다."라고 Lee는 말합니다.

궁극의 캐싱 플레이북으로 준비하세요

이제 캐시가 필요하다는 것을 알았으니 이 무료 전자책은 Redis로 캐시를 구축하고 확장하는 데 필요한 유일한 입문서입니다.

Lee 본인:"이 책은 캐싱이 무엇인지, 왜 이것이 효과적인 대규모 최신 애플리케이션의 초석인지, Redis가 이러한 까다로운 캐싱 요구 사항을 충족하는 데 어떻게 도움이 되는지 설명합니다."

Caching at Scale With Redis 전자책에 대해 자세히 알아보십시오. 다양한 유형의 캐싱 전략에 대해 논의하고 이러한 전략이 특히 클라우드에 있는 경우 어떻게 적합할지에 대한 실용적인 설명을 제공합니다.

Lee는 "응용 프로그램이 대규모로 고가용성을 유지하도록 하는 방법, 프로세스 및 기술이 많이 있지만 거의 모든 것에서 캐싱이 핵심 기술입니다."라고 말합니다.

전자책에 대한 자세한 내용은 페이지 .