나는 읽고 AWS 람다, S3 및 CloudFront를 (CF)에 대한 비디오를보고 있었다. 나는 여기서 구름의 정면과 더 일반적인 CDN의 개념을 이해하고 있는지 (또는 아님) 확인하고 싶다.CloudFront가 제대로 작동합니까? labmda는, S3, CloudFront를
목표 : 저는 CF를 통해 내 응용 프로그램의 이미지를 제공하고 싶습니다. 내가 aws 람다 함수를 배포 할 예정이다. 내가 묘사하는 시나리오에서 - 나의 람다 함수는 단 하나의 끝 점이있는 간단한 플라스크 앱입니다. 이미지 업로드를 구현하는 POST 끝점 (파일에서 checsum을 만들고, 파일 체크섬이 이미 s3에 있는지 확인 - 저장 여부 및 이미지 반환). 이미지 크기 조정은 쿼리 문자열을 통해 인수가 제공된 경우에만 실행됩니다. 모든 이미지는 저장됩니다 (원본, 크기 조정, 회전 등). S3는 CF의 근원입니다.
배포본 : 저는 Python을 사용하기 때문에 배포 도구로 zappa을 사용하고 싶습니다.
예를 들어 문제 :
8시 : 사용자가 호주에서 이미지를 업로드합니다. 이전에 이미지가 없었기 때문에 S3에 저장되어 반환되었습니다.
9:00 동일한 사용자가 이미지의 미리보기 이미지를 요구하고 있습니다. 이미지 크기가 조정되어 반환됩니다. 여기서는 이미지 크기 조정 요청 (예 : https://app.org/resize/image1.jpeg?width=80&height=80)이 응답 (image.jpg 80x80)과 함께 클라우드 프론트의 호주 에지 노드에 저장된다고 가정합니다.
10:00 사용자가 동일한 쿼리 문자열을 사용하여 동일한 미리보기 이미지를 요구하는 경우 - 사용자가 오스트레일리아 클라우드 프런트 에지 캐시에서 image.jpg 80x80을 가져옵니다.
맞았습니까?
확인.나는 당신의 요점을 부분적으로 얻었지만 아직 어떤 것들은 여전히 그늘 지요. – scagbackbone
aws lambda (aws api gateway를 통한 플라스크 응용 프로그램)는 다음과 같이 계산됩니다. ''출처는 CF의 요청을 처리 할 수있는 응용 프로그램 서버 여야합니까? ' 그래서 두 개의 끝점이 있습니다. 하나는 업로드하고 두 번째는 이미지가있을 경우 반환하거나 축소판을 요청하면 크기를 조정하고 반환하는 '그늘진'GET입니다. – scagbackbone