중요한 데이터를 저장할 수 있고 99.9%의 객체 내구성을 보장하도록 설계되었다.
즉 파일이 유실될 가능성이 거의 없으며 데이터를 안전하게 저장할 수 있다.
서버를 직접 운영하게 된다면 파일을 SSD나 하드디스크에 저장하게 될 텐데 이 장치들은 언젠가 고장이 나게 되어있다. 그런 문제를 완화시키기 위해 여러 개의 하드디스크에 저장하지만 동시에 고장 나게 될 확률도 있다.
이러한 문제를 해결하기 위해 S3는 여러 대의 하드디스크를 자동화된 방식을 통해서 데이터를 보관을 하고 보관 과정에서 유실이 일어나면 자동으로 그 파일을 다른 저장 장치에 중복해서 저장하도록 하는 시스템을 갖추고 있다.
S3와 웹브라우저 사이 파일을 주고받을때는 S3라는 암호화된 방식을 통해서 주고 받기 때문에 안전하다.
고성능
AWS 리전(AWS지역)을 선택해서 그 지역과 가까운곳에서 빠르게 전송이 가능하다.
또는 Amazon CloudFront(= CDN)도 가능하다.
기본적으로 사용자가 원격지에 있는 서버(Origin Server)로 부터 Content(예. Web Object, Video, Music, Image, Document 등)를 다운로드 받을때 가까이 있는 서버에서 받는 것보다 시간이 오래 걸리므로, 사용자와 가까운 곳에 위치한 Cache Server에 해당 Content를 저장(캐싱)하고 Content 요청시에 Cache Server가 응답을 주는 기술
사용자가 파일을 서버 쪽으로 전송하면 그 파일을 미들웨어가 받아서
미들웨어가 S3에 api를 통해서 S3로 전송해 주고 그 전송된 결과를 사용자에게 보여주는 방식으로 작동된다.
한마디로 S3는 파일들을 안전하게 저장해 주고 빠르게 제공해 주며 정적 웹사이트를 호스팅 해주는 서비스이다.