[AWS SAA-C03] AWS CloudFront 정리 1

Cloud Front

  • CloudFront는 정적, 동적 웹 또는 스트리밍 콘텐츠를 최종 사용자에게 배포하는 속도를 높이는 완벽한 관리형 고속 컨텐츠 전송 네트워크(CDN) 서비스이다.
  • Edge Location 또는 PoP(Point of Presense)라고 불리는 전 세계적인 데이터 센터 네트워크를 통해 콘텐츠를 제공한다.
  • 개발자 친화적인 환경에서 짧은 대기 시간과 높은 전송 속도로 전 세계 고객에게 데이터, 비디오, 애플리케이션 및 APi를 안전하게 제공한다.
  • 각 사용자 요청을 콘텐츠를 가장 잘 처리할 수 있는 edge location으로 라우팅하여 가장 짧은 지연 시간을 제공함으로써 콘텐츠 배포속도를 높인다.
  • AWS 백본 네트워크를 사용하여 사용자의 요청이 통과해야 하는 네트워크 홉(hop) 수를 획기적으로 줄이고 성능 향상, 낮은 지연 시간 및 높은 데이터 전송 속도를 제공한다.
  • 널리 사용되는 웹 사이트 이미지, 비디오, 미디어 파일 또는 소프트웨어 다운로드와 같은 edge 전달을 통해 자주 액세스하는 정적 컨텐츠를 배포하는 데 적합하다.
    • 인터넷을 통해 여러 사이트에서 캐시 서버 네트워크를 운영하는 데 드는 비용과 복잡성을 제거하고 트래픽 급증에 대응하기 위해 용량을 과도하게 프로비저닝할 필요가 없다.
    • 객체의 복사본이 전 세계 여러 위치에 보관되어 있기 때문에 향상된 안전성과 가용성을 제공한다.
    • 오리진 서버와의 지속적인 연결을 유지하여 해당 파일을 오리진 서버에서 최대한 빨리 가져올 수 있다.
    • 동일한 파일의 에지 위치에서 동시 뷰어 요청을 오리진 서버에 대한 단일 요청으로 축소하는 것과 같은 기술을 사용한다.
    • 현장 수준의 암호화 및 HTTPS 지원을 포함한 가장 고급 조안 기능을 제공한다.
    • AWS Shield, AWS Web Application Firewall-WAF 및 Route 53과 완벽하게 통합되어 네트워크 및 애플리케이션 계층 DDoS 공격을 비롯한 다양한 유형의 공격으로부터 보호한다.
    • CloudFront Edge 위치 또는 PoP은 인기 있는 콘텐츠가 시청자에게 빠르게 제공될 수 있도록 한다.
    • CloudFront에는 또한 콘텐츠가 PoP에 머물 만큼 인기가 많지 않은 경우에도 시청자에게 더 많은 컨텐츠를 제공하여 해당 콘텐츠의 성능을 향사시키는 데 도움이 되는 지역 에지 캐시(Regional edge caches)가 있다.
    • 지역 에지 캐시(Regional edge caches)는 뷰어 근처에 전역적으로 배포되며 오리진 서버와 edge location 사이에 위치한다.
    • 지역 에지 캐시는 여러 edge location를 지원하고 더 큰 캐시 크기를 지원하므로 개체가 가장 가까운 지역 에지 캐시 위치에서 캐시에 더 오래 남아 있다.
    • 지역 에지 캐시는 모든 유형의 콘텐츠, 특히 시간이 지남에 따라 인기가 떨어지는 경향이 있는 콘텐츠를 지원한다.
    설정
    1. 배포할 파일을 가져오도록 오리진 서버를 구성해야 한다. 오리진 서버는 개체의 최종 버전을 저장하며, S3, EC2 또는 온프레미스 서버에 대한 AWS 호스팅 서비스가 될 수 있다.
    2. 공용 읽기 권한이나 OAI(Origin Access Identity)로 제한된 권한으로 파일 또는 개체를 오리진 서버에 추가/업로드할 수 있다.
    3. 사용자가 파일을 요청할 때 파일을 가져올 원본 서버를 CloudFront에 알려주는 CloudFront 배포판을 만든다.
    4. CloudFront는 배포 구성을 모든 Edge location으로 전송한다.
    5. 웹사이트는 CloudFront에서 제공한 도메인 이름 또는 사용자 지정 대체 도메인 이름과 함께 사용할 수 있다.
    6. 오리진 서버는 액세스 프로토콜, 캐싱 동작, TTL을 추가하기 위한 파일에 헤더 추가 또는 만료 시간을 제한하도록 구성할 수 있다.
    사용자로의 컨텐츠 전달
    1. 사용자가 웹 사이트, 파일 또는 개체에 액세스할 때 DNS는 가장 짧은 대기 시간으로 사용자의 요청을 가장 잘 처리할 수 있는 CloudFront edge location으로 요청을 라우팅한다.
    2. CloudFront는 요청한 개체가 Edge 위치의 캐시에 있는 경우 개체를 즉시 반환한다.
    3. 요청한 개체가 edge location의 캐시에 없는 경우 개체를 즉시 반환한다.
    4. 요청한 개체게 edge location의 캐시에 있는 경우 CloudFront는 개체를 요청한 POP에 전달한다.
    5. POP 또는 지역 에지 캐시 위치에 캐시되지 않은 개체의 경우 CloudFront는 오리진 서버에서 개체를 요청하고 지역 에지 캐시 및 POP를 통해 사용자에게 개체를 반환한다.
    6. CloudFront는 지역 에지 캐시 위치에서 첫 번째 바이트가 도착하자마자 객체를 사용자에게 전달하기 시작한다.
    7. CloudFront는 또한 다음 번에 시청자가 요청할 때 서버에 최신 버전이 있는지 확인하고, 최신 버전이 있으면 동일한 개체를 사용한다. 오리진 서버에 최신 버전이 있는 경우 동일한 버전이 검색되어 사용자에게 제공되고 캐시된다.
    CloudFront Origin
    • 각 오리진은 S3 버킷, MediaStore 컨테이너, MediaPackage 채널 또는 EC2 인스턴스 또는 HTTP 서버와 같은 사용자 정의 오리진이다.
    • S3 버킷의 경우 버킷 URL 또는 정적 웹 사이트 endpoint URL을 사용하고 파일을 공개적으로 읽거나 OAI를 사용하여 보안해야 한다.
    • 오리진 제한 액세스는 S3 개체에 직접 액세스하지 못하도록 오리진 액세스 ID를 사용하여 구성할 수 있다.
    • HTTP 서버를 오리진으로 지정하려면 리소스의 도메인 이름을 매핑해야 하며 파일을 공개적으로 읽을 수 있어야 한다.
    • 배포는 요청을 각 오리진으로 라우팅하는 하나 이상의 캐시 동작과 함께 각 버킷에 대해 여러 오리진을 가질 수 있다. 캐시 동작의 경로 패턴은 해당 캐시 동작과 연결된 오리진(S3 버킷)으로 라우팅되는 요청을 결정한다.
    • 오리진 그룹을 사용하여 두 오리진을 지정하여 고가용성을 위해 오리진 페일오버를 구성할 수 있다. 오리진 페일오버는 기본 오리진과 기본 오리진이 특정 HTTP 상태 오류 코드 응답을 반환할 때 CloudFront가 자동으로 전환하는 두 번째 오리진을 지정하는 데 사용할 수 있다.
    CloudFront 제공 방법
  • 웹 배포
  • CloudFront 사용 시 이점
  • HTTP 또는 HTTPS를 사용하는 HTML, CSS, JS, 이미지 등에 대해 정적 및 동적 콘텐츠를 모두 지원한다.
  • Progressive Download 및 Apple HTTP Live Streaming(HLS)를 사용하여 주문형 멀티미디어 콘텐츠를 지원한다.
  • 미팅, 컨퍼런스 또는 콘서트와 같은 라이브 이벤트를 실시간으로 지원한다. 라이브 스트리밍의 경우 AWS Cloud Formation 스택을 사용하여 자동으로 배포를 생성할 수 있다.
  • 오리진 서버는 S3 버킷 또는 HTTP 서버(웹 서버 또는 AWS ELB 등)일 수 있다.경로 패턴
    • 경로 패턴은 캐시 동작을 적용할 경로를 지정한다.
    • 기본(*) 패턴이 생성되고 여러 캐시 배포에 패턴을 추가하여 기본 경로보다 우선 순위를 지정할 수 있다.뷰어 프로토콜 정책(뷰어 -> CloudFront)
    • 허용된 액세스 프로토콜을 정의하도록 뷰어 프로토콜 정책을 구성할 수 있다.
    • CloudFront와 Viewer 간에 캐시 배포를 구성하여 다음 중 하나를 허용할 수 있다.
      = HTTPS Only: HTTPS만 지원
      = HTTP와 HTTPS 모두 지원
      = HTTP가 HTTPS로 리다이렉션 됨: : HTTP가 HTTPS로 리다이렉션됨오리진 프로토콜 정책(CloudFront -> 오리진)
  • 캐시 동작 설정
  • CloudFront와 Origin 간에 캐시 배포는 다음과 같이 구성할 수 있다.
    = HTTP 전용(S3 정적 웹 사이트의 경우)
    = HTTP Only: CloudFront는 뷰어가 개체를 요청하는 데 사용한 프로토콜 사용
  • S3를 Origin으로 사용할 경우
    = 웹 사이트의 경우 HTTPS가 지원되지 않으므로 프로토콜은 HTTP 사용
    = S3 버킷의 경우 기본 오리진 프로토콜 정책은 Match Viewer이며 변경할 수 없다. 따라서 CloudFront가 뷰어와 CloudFront 간에 HTTPS를 요구하도록 구성되면 자동으로 HTTPS를 사용하여 S3와 통신한다.
    • CloudFront는 다음을 사용하여 대체 도메인 이름에 대해 HTTPS와 함께 작동하도록 구성할 수 있다.
    • 전용 IP 주소를 사용하여 HTTPS 요청을 제공할 경우
      • CloudFront는 대체 도메인 이름을 전용 IP 주소와 연결하고, 인증서는 DNS 서버로부터 IP 주소에 대한 요청을 수신할 때 IP 주소와 연결된다.
      • CloudFront는 IP 주소를 사용하여 배포를 식별하고 SSL/TLS 인증서를 사용하여 뷰어로 돌아간다.
      • 사용자가 사용 중인 브라우저 도는 다른 뷰어에 관계없이 모든 HTTPS 요청에 대해 작동한다.
      • 전용 IP 주소를 사용하는 경우 월 600달러의 추가 요금이 발생한다.
    • 서버 이름 표시를 사용한 HTTPS 요청 처리 - SNI
      • SNI 사용자 지정 SSL은 TLS 프로토콜의 SNI 확장에 의존한다. 이를 통해 호스트 이름을 포함하여 동일한 IP 주소를 통해 여러 도메인을 제공할 수 있다.
      • SNI 메서드를 사용하는 CloudFront는 IP 주소를 대체 도메인 이름과 연결하지만 IP 주소는 전용이 아니다.
      • CloudFront는 IP 주소가 전용이 아니기 때문에 IP 주소를 기반으로 요청이 어느 도메인이 있는지 결정할 수 없다.
      • SNI를 지원하는 브라우저는 자동으로 요청 URL에서 도메인 이름을 가져와 요청 헤더의 새 필드에 추가한다.
      • CloudFront는 SNI를 지원하는 브라우저로부터 HTTPS 요청을 수신하면 요청 헤더에서 도메인 이름을 찾고 해당 SSL/TLS 인증서로 요청에 응답한다.
      • 뷰어와 CloudFront는 SSL 협상을 수행하고, CloudFront는 요청된 콘텐츠를 뷰어에게 반환한다.
      • 이전 브라우저는 SNI를 지원하지 않는다.
      • SNI Custom SSL은 표준 CloudFront 데이터 전송 및 요청 수수료 이외의 추가 비용 없이 제공된다.
      • 엔드 투 엔드 HTTPS 연결의 경우 다음 요구 사항에 따라 뷰어와 CloudFront 및 CloudFront와 Origin 모두에 인증서를 적용해야 한다.
    • 뷰어와 CloudFront 간의 HTTPS
      • Comodo, DigiCert 또는 Symantec과 같은 신뢰할 수 있는 CA(인증 기관)에서 발급한 인증서
      • AWS 인증서 관리자(ACM)가 제공하는 인증서
      • 자체 서명된 인증서는 사용 불가능하다.
    • CloudFront와 Custom Origin 간의 HTTPS
      • 오리진이 ELB 로드 밸런서가 아닌 경우에는 Comodo, DigiCert, Symantec과 같은 신뢰할 수 있는 CA에서 인증서를 발급해야 한다.
      • 로드 밸런서의 경우 ACM에서 제공하는 인증서를 사용할 수 없다.
      • 자체 서명된 인증서는 사용할 수 없다.
      • CloudFront의 ACM 인증서는 미국 동부(N. Virginia) 지역에서 요청하거나 가져와야 한다. CloudFront 배포와 연결된 이 영역의 ACM 인증서는 해당 배포에 대해 구성된 모든 지리적 위치에 배포된다.
    허용된 HTTPS 메소드
  • HTTPS 연결
  • CloudFront는 GET, HEAD, OPTIONS, PUT, POST, Patch, DELETE를 지원하여 객체를 가져오고 추가, 업데이트 및 삭제하며 객체 헤더를 가져올 수 있다.
  • GET, HEAD 메서드는 객체나 객체 헤더를 가져온다.
  • GET, HEAD, OPTIONS 메서드는 개체, 개체 헤더를 가져오거나 지원되는 메서드 옵션 목록을 가져온다.
  • GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE 메서드를 이용하여 웹 양식에서 데이터를 전송할 수도 있다.
  • CloudFront는 GET 및 HEAD 요청과 선택적으로 OPTIONS 요청에 대한 응답만 캐시한다. CloudFront는 PUT, POST, PATCH, DELETE 요청 메서드에 대한 응답을 캐시하지 않으며, 이러한 요청은 오리진으로 전송한다.
  • PUT, POST 메서드는 이러한 작업이 원본으로 전송되기 때문에 콘텐츠 업로드를 가속화하는 데 도움이 된다. S3는 CloudFront Edge location을 통해 효율성을 개선하고 대기 시간을 단축하며 애플리케이션이 에지 위치에서 오리진 서버로 유지되는 모니터링되고 영구적인 연결을 활용할 수 있도록 디원한다.

Cloud Front Edge Cache

  • 캐시 최대 사용 기간 제어
    = 캐시 적중률을 높이기 위해 객체에 Cache-Control: max-age 디렉티브를 추가하도록 오리진을 구성할 수 있다.
    = 간격이 길어지면 오리진에서 검색되는 빈도가 줄어든다.
  • 쿼리 문자열 매개 변수 기반 캐싱
    = 쿼리 매개 변수를 기반으로 캐시하도록 CloudFront를 구성할 수 있다.
    = None(캐싱 향상) - 오리진이 쿼리 문자열 매개 변수의 값에 관계없이 동일한 버전의 개체를 반환하는 경우
    = 모두 전달, 화이트리스트 기반 캐시 - 오리진 서버가 하나 이상의 쿼리 문자열 매개변수를 기반으로 다른 버전의 개체를 반환하는 경우. 그 다음 CloudFront에서 캐시를 기준으로 사용할 매개 변수를 '쿼리 문자열 화이트리스트' 필드에 지정한다.
    = 모두 전달 - 오리진 서버가 모든 쿼리 문자열 매개 변수에 대해 다른 버전의 캐시를 반환하는 경우 모두를 기반으로 캐시한다.
  • 캐시 성능 향상
    = 오리진이 고유 개체를 반환하는 쿼리 문자열만 전달하도록 CloudFront를 구성한다.
    = 매개 변수 값 A 또는 a와 같은 매개 변수 값에 대해 동일한 대소문자를 사용하면 반환된 응답 또는 개체가 동일하더라도 CloudFront는 동일한 요청을 두 번 캐시한다.
    = 요청 a=x&b=y 및 b=y&a=x에 대해 동일한 매개 변수 순서를 사용하면 응답 또는 개체가 동일하더라도 CloudFront는 동일한 요청을 두 번 캐시한다.
  • 쿠키 값을 기반으로 한 캐싱
    = CloudFront는 쿠키 값을 기반으로 캐시하도록 구성할 수 있다.
    = 기본적으로 Edge location에서 캐싱하는 동안 쿠키는 고려하지 않는다.
    = 캐싱 성능은 다음과 같이 향상될 수 있다.
    = 모든 쿠키를 전달하는 대신 지정된 쿠키만 전달하도록 CloudFront를 구성한다. 예를 들어 요청에 3개의 가능한 값이 포함된 쿠키가 2개인 경우 응답이 단일 쿠키를 고려하더라도 CloudFront는 가능한 모든 조합을 캐시한다.
    = 쿠키 이름과 값은 모두 대소문자를 구분하므로 동일한 대소문자를 사용하는 것이 좋다.
    = 정적 콘텐츠와 동적 콘텐츠에 대해 별도의 캐시 동작을 생성하고, 동적 콘텐츠에 대해서만 쿠키를 오리진으로 전달하도록 CloudFront를 구성한다. 예를 들어 CSS 파일의 경우 객체가 쿠키 값과 함께 변경되지 않으므로 쿠키가 의미 없다.
    = 가능한 경우, 쿠키 값이 각 사용자(예: 사용자 ID)마다 고유한 동적 콘텐츠에 대해 별도의 캐시 동작을 만들고, 조합 수를 줄이는 더 적은 수의 고유한 값에 따라 달라지는 동적 콘텐츠를 만든다.
  • 요청 헤더를 기반으로 하는 통증
    = 요청 헤더를 기반으로 캐시하도록 CloudFront를 구성할 수 있다.
    = 기본적으로 CloudFront는 edge location의 개체를 캐싱할 때 헤더를 고려하지 않는다.
    = 요청 헤더를 기반으로 캐시하도록 구성된 CloudFront는 CloudFront가 전달하는 헤더를 변경하지 않으며, CloudFront가 헤더 값을 기반으로 개체를 캐시하는지 여부만 변경한다.
    = 캐싱 성능은 다음과 같이 향상될 수 있다.
    = 모든 헤더를 기반으로 전달 및 캐싱하는 대신 지정된 헤더만 기반으로 전달 및 캐싱하도록 다음과 같이 구성한다.
    = 고유한 값이 많은 요청 헤더를 기반으로 캐싱하지 않도록 구성
    = CloudFront는 모든 헤더를 오리진으로 전달하도록 구성되어 있지만 CloudFront는 이 캐시 동작과 관련된 개체를 캐시하지 않는다. 대신 모든 요청을 오리진으로 보낸다.
    = CloudFront는 헤더 값을 기반으로 캐시며, 헤더 이름의 대소문자를 고려하지 않고 헤더 값의 대소문자를 고려한다.개체 캐싱 및 만료(Object Caching & Expiration)
  • 개체 만료는 개체가 Origin에서 다시 가져올 때까지 CloudFront 캐시에 남아 있는 시간을 결정한다.
  • 만료 시가닝 짧으면 자주 변경되는 콘텐츠를 제공하는 데 도움이 되고 만료 시간이 길면 성능이 향상되고 원본 로드가 줄어든다.
  • 기본적으로 각 개체는 24시간 후에 자동으로 만료된다.
  • 만료 시간 후 CloudFront는 최신 버전이 아직 있는지 확인한다.
  • 캐시에 이미 최신 버전이 있는 경우 오리진은 304 상태 코드(수정되지 않음)를 반환한다.
  • CloudFront 캐시에 최신 버전이 없으면 오리진에서 200 상태 코드(OK)와 개체의 최신 버전을 반환한다.
  • edge location에 있는 개체를 자주 요청하지 않는 경우 CloudFront는 개체를 제거하고 만료 날짜 이전에 개체를 제거하여 최근에 요청한 개체를 위한 공간을 확보할 수 있다.
  • 전체 경로 패턴에 대해 캐시 동작은 최소 TTL, 최대 TTL 및 기본 TTL 값을 설정하여 구성할 수 있다.
  • 개별 객체의 경우 객체에 cache-control: max-age 또는 s-maxage 디렉티브 또는 Expires 헤더 필드를 추가하도록 오리진을 구성할 수 있다.
  • AWS는 만료 헤더에 대한 Cache-Control max-age 디렉티브와 Expires 헤더가 모두 지정된 경우 Cache-Control max-age 값만 사용한다.
  • 뷰어의 GET 요청이 있는 HTTPS Cahce-control 또는 Pragma 헤더 필드를 사용하여 CloudFront가 개체의 오리진 서버로 돌아가도록 강제할 수 있다.
  • 서버적으로 오리진이 HTTP 4xx 또는 5xx 상태 코드를 반환할 때 CloudFront는 이러한 오류 응답을 5분 동안 캐시한 다음 개체에 대한 다음 요청을 오리진에 제출하여 다음 요청을 확인한다.
  • 요청한 개체를 사용할 수 있으며 문제가 해결되었습니다.

CloudFront Origin Shield

  • CloudFront Origin Shield는 CloudFront 캐싱 인프라에 오리진 로드를 최소화하고 가용성을 개선하여 운영 비용을 절감하는 데 도움이 되는 추가 계층을 제공한다.
  • 오리진 실드는 캐시 적중률을 높여 오리진에 대한 로드를 줄이는 데 도움이 되는 중앙 집중식 캐싱 계층을 제공한다.
  • 오리진 실드는 지역간 요청을 축소하여 개체당 하나의 요청만 오리진에 전달함으로써 오리진 운영 비용을 줄인다.
  • 오리진 실드는 오리진에 가장 가까운 지역 edge 캐시를 선택하여 오리진 실드 영역이 되도록 구성할 수 있다.
  • CloudFront Origin Shield는 다음과 같은 많은 사용 사례에 유용하다.
    = 다양한 지역에 분산된 뷰어
    = 실시간 스트리밍 또는 즉각적인 이미지 처리를 위한 적시 패키징을 제공하는 출처
    = 용량 또는 대역폭 제약이 있는 사내 자원
    = 다중 컨텐츠 전송 네트워크(CDN)를 사용하는 워크로드

압축 파일 제공

 - CloudFront는 뷰어 요청이 요청 헤더에 Accept-Encoding을 포함할 때 특정 유형의 파일을 자동으로 압축하고 압축된 파일을 제공하도록 구성할 수 있다.
 - 컨텐츠를 압축하면 CloudFront 데이터 전송 비용이 서비스되는 총 데이터 양을 기준으로 하기 때문에 파일 크기가 작을 뿐만 아니라 비용도 저렴하고 다운로드 속도도 더 빠르다.
 - CloudFront는 Gzip 및 Brotli 압축 형식을 사용하여 객체를 압축할 수 있다.
 - 커스텀 오리진에서 서비스를 제공하는 경우, 다음과 같이 구성할 수 있다.
  = CloudFront 압축 여부에 관계없이 파일을 압축하도록 구성
  = CloudFront가 압축하지 않는 파일 형식을 압축
 - 오리진이 압축 파일을 반환하는 경우 CloudFront는 Content-Encoding 헤더 값에 의한 압축을 감지하고 파일을 다시 압축하지 않는다.
 - CloudFront는 아래와 같이 압축을 사용하여 콘텐츠를 제공한다.
  1.CloudFront 배포판이 생성되고 콘텐츠를 압축하도록 구성된다.
  2. 뷰어는 gzip, br 또는 둘 다 포함된 Accept-Encoding 헤더를 요청에 추가하여 압축 파일을 요청한다.
  3. Edge location에서 CloudFront는 요청에서 참조되는 파일의 압축된 버전을 캐시에서 확인한다.
  4. 압축된 파일이 캐시에 없는 경우 CloudFront는 요청을 오리진 서버(S3 버킷 또는 사용자 지정 오리진)로 전달한다.
  5. CloudFront는 캐시에 압축되지 않은 버전의 파일이 있더라도 요청을 오리진으로 전달한다.
  6. 오리진 서버가 요청한 파일의 압축되지 않은 버전을 반환한다.
  7. CloudFront는 파일이 압축 가능한지 여부를 결정한다.
  8. 파일은 CloudFront에서 압축하는 유형이어야 한다.
    a. 파일의 크기는 1,000바이트에서 10,000,000바이트 사이여야 한다.
    b. 유효한 압축 제한 내의 크기를 결정하려면 응답에 Content-Length 헤더가 포함되어야 한다. 이 헤더가 없는 경우 CloudFront는 파일을 압축하지 않는다.
    c. 파일의 Content-Encoding 헤더 값이 gzip이면 안된다. 즉, 오리진이 이미 파일을 압축하면 안된다.
    d. 응답에는 본문이 있어야 한다.
    e. 응답 HTTP 상태 코드는 200, 403 또는 404이어야 한다.
  9. 파일이 압축 가능한 경우 CloudFront는 파일을 압축하고, 압축된 파일을 뷰어로 반환한 후 캐시에 추가한다.
  10. 뷰어가 파일의 압축을 푼다.

 

출처: https://jayendrapatil.com/aws-certified-solutions-architect-associate-saa-c03-exam-learning-path/

 

AWS Certified Solutions Architect - Associate SAA-C03 Exam Learning Path

AWS Solutions Architect - Associate SAA-C03 Certification exam learning path provides a brief learning path and resources for the AWS Certified

jayendrapatil.com

상기 출처의 내용을 번역&재정리하였습니다.

반응형