국제화 전 사전작업들이 필요
이미지 요청 -> Cloud Front <-> Lambda(resize) <-> s3
avif 파일을 사용함으로 트레픽 비용을 아꼈다
DB요청 앞에 캐시를 붙여서 일차적으로 해결할 수 있겠지만 서비스를 붙이는 것으로는 비용절감이 불가능(트레픽이 워낙 많아서 많이 띄워놔야하므로)
-> 로컬 캐시로 처리를 해볼까? -> 근데 EC2는? -> 네트워크 요청 비용이 많이 발생하고 있다.
제일 앞단인 CloudFront에서 캐싱을 시도. 두가지 방법이 있다.
S3 vs API 캐싱
API 캐싱을 택했고 이것을 도입할 때는 헤더값 또한 캐싱이 되므로 쿠키 값 응답을 커스텀하게 잘 받아줘야한다.
Next.js를 프록시 처럼 쓴다? 호오…
rewrite라는 것을 통해서 백엔드 서버로 bypass 시키도록 하고 있다고 한다.
이 경우 Next.js의 경우 bypass 할 때 /client를 path에 덫붙여서 해결…??
리버스 프록시를 선택하여 사용했는데 nginx 말고 traefik(Go 언어 기반)
특정 헤더나 쿠키를 가지고 분기 처리를 하여 레거시와 신규 서비스를 동시에 열고 제공이 가능했다.