42장. 비용과 성능을 같은 표에서 판단한다
빠른 페이지가 비싼 페이지가 될 수 있고, cache hit를 높이다 개인정보를 공유할 수 있다. LocalLoop는 월간 활성 사용자·목록 요청·예약 수·이미지 전송량·build 횟수·DB storage를 가정표에 넣고 Vercel과 EKS 비용을 각각 추정한다. 공급자 가격은 변하므로 숫자를 본문에 고정하기보다 계산일·region·공식 계산기 입력을 기록한다. 무료 구간은 정상 비용이 아니라 한시적 할인으로 취급한다.
성능 예산은 mobile p75 LCP·INP·CLS, route p95, JS transfer, image bytes, DB query 수로 둔다. 목록 페이지에 client library를 추가했을 때 번들·hydration·전환을 전후 비교한다. Server Component로 옮겨 JS가 줄어도 server latency와 비용이 늘 수 있으므로 사용자 체감과 origin load를 함께 본다. 이미지 품질은 눈으로만 정하지 않고 대표 기기에서 크기·decode 시간·가독성을 비교한다.
비용 alert는 청구서가 나온 뒤가 아니라 요청량·egress·function duration·build 횟수·DB connection을 예산과 연결한다. 비정상 crawler, cache miss 폭증, 무한 retry가 비용 사고인지 운영 사고인지 구분하지 말고 같은 incident로 다룬다. 최적화 제안에는 절감 예상, 사용자 영향, 보안 영향, 원복 조건을 함께 쓴다.