** AWS를 사용한다는 가정에서 설명하겠습니다.
** ec2의 경우 프리티어 t2.micro 기준으로 설명하겠습니다.
1. EC2 + Nginx + Docker
-> 문제는 t2.micro 기준으로 빌드가 ec2안에서 불가능하더라구요..
그럼 이 경우,
a) 걍 build디렉토리도 같이 버전관리를해서 EC2에서는 pull만 하도록 한다.
b) ec2 인스턴스 성능을 더 좋은것으로 업그레이드한다.
돈이 있다면 b로 당연히 가는 게 맞겠죠?
2. S3 + Cloudfront + Lambda
-> Lambda 비용이 ec2 인스턴스 업그레이드 비용을 넘을 것이냐가
제 생각에는 쟁점일 거 같은데 (serverless 로서의 장점은 일단 제쳐두고요.. *-* )
선생님들은 보통어떤선택을 하시나요?
아무런 말씀이어도 좋으니 그냥 조언,지적,생각공유
해주실 수 있다면 정말로 감사하겠습니다.
3. S3 + cloudfront 프론트는 왠만하면 정적빌드해서 cdn에 올립니다 여태 내가다녔던 회사는 다 그랬음
알겠습니다 답변감사드려용
next.js도 아니고 서버가 왜 필요함 그리고 netlify랑 vercel 무료배포 가능한데 심화 기능 필요 없는 이상 무료 쓰셈
음 .. 글을 너무 부실하게 썼네요 혼란드려 죄송합니다. 프록시서버가 필요한 경우의 배포를 얘기하고자 한 거 였습니다.. 그래서 ec2+nginx vs s3+lambda 의 구도를 말씀드린 거였어용 ,,, *-*
설명을 좀 더 해주세요. 프론트 서버 배포를 한다는건지, 정적 파일만 배포한다는건지?
음 .. 글을 너무 부실하게 썼네요 혼란드려 죄송합니다. 프록시서버가 필요한 경우의 배포를 얘기하고자 한 거 였습니다.. 그래서 ec2+nginx vs s3+lambda 의 구도를 말씀드린 거였어용 ,,, *-*
백엔드 없는 프론트같은데 이경우 단순 서빙이니 ec2, nginx, lambda 다 필요없고 cloudfront, heroku, vercel 같은 사이트 사용하는게 맞음 - dc App
t2.micro 인 점에서 트래픽이 낮은 상황이니 굳이 백엔드가 필요하다면 lambda 사용하셈 - dc App
아하 알겠습니다 답변 감사드려용
빌드머신은 따로 두는게 맞아요. 빌드가 서비스에 영향을 주면 안되죠. github action 퍼블릭이면 무료니까 거기서 빌드해서 ECR로 푸시하도록 하고, codeDeploy 같은걸로 파이프라인 잘 설정하면 돼요.
근데 그냥 람다 쓰세요. 웬만하면 프리티어 넘게 못써요
확인했습니다 답변감사드려요 ㅠㅠ 좋은밥되십쇼
aws amplify도 괜찮아요
서버리스는 amplify가 압도적으로 편한거같음