안녕, 게이들 오랜만에 퇴물이 왔다.
가끔 개발 이야기 하는 맛도 있어야제.
요즘 달러가 미쳐돌아가다보니 AWS 비용도 원화 기준으론 꽤 만만치 않게 나오는데,
좀 부담 되는 수준이 되어버림..
나는 개발만 하다보니 인프라쪽은 트렌드를 잘 모르는 편인데
딸피라서 더 공부해야하나 싶다가도 막상 돈이 줄줄 샌다는 느낌이라 줄였는데
몇가지 과정을 설명해줌.
대단한건 없지만 개인 서비스 만들 때는 내 돈 10달러도 아까우니 구경하셈.
1. AWS S3 Public Access
이미지+빌드된JS+미디어 서빙용으로 S3에 담고 Public Access를 오픈해서 사용하고 있었음.
AWS는 GET 1회 호출당 + 트래픽과금 이었음.
한달 15M Request 정도였고, 호출비용 $5.48 + 트래픽 비용 $1.2 정도. 합이 $6.68
2. CloudFlare Pages 로 전환.
최근 새로운 인프라로 CloudFlare를 공부해봤는데 이거 꽤나 혜자였다.
물론 깃겔에 다른 게시물에 댓글로 알려준 친구들 덕이었는데 이 맛에 깃겔오게 되는 듯.
Pages는 Netlify, Github Pages 랑 비슷한건데.
깃 헙 레포에 연동해두고, Asset Resources (min.js, images) 만 잔뜩 담아서 다시 빌드하면 쫙 배포된다.
과금체계가 특이하게도 호출비용 트래픽 비용 무료.
Unlimited Requests
Unlimited Bandwidth.
다만 Lambda같은 Workers나 Pages Function이 있는데 이것만 따로 10만콜 정도 과금하는데,
난 그런거 없고 에셋만 있다보니 전혀 과금이 없다.
한국 로케서버가 아니라서 레이턴시(=핑) 문제는 있지만,
위에 에셋들은 보통 Browser Caching 되는 것들이라. 처음만 약간(?) 느리고 그 다음부터는 문제가 없음.
그래서 이걸로 바꾸고 소박하게 월 10달러 굳었다.
3. AWS WAF to Cloudflare WAF
AWS WAF는 생각보다 창렬했음.
기본 운용비 $5, 룰설정비용 $2 (ratelimit), 호출비용 $77 정도 나옴.
합이 85불 ㅋㅋ
크롤링하거나 단순한 딜레이형 DDOS 공격하면 그대로 다 쳐 맞는데 호출비용+트래픽요금까지 나감..
Cloudflare는 ratelimit 같은 아주 단순한 WAF는 무료로 그냥 제공해주고
Request 과금없어서 이걸로 갈아탐. Pro요금제로 갈아타도 $20이라 개쌉이득.
4. API to R2
기존에 Cloudfront Loadbalancer를 거쳐서 API 서버에 딱 꽂히게 되는데
API 서버의 Rest 응답들 중에서 반 이상은, 실시간성이 필요 없고, 속도도 중요하지 않으며
1분에 한번 정도 업데이트 해주면 되는 정도의 제공도 있었다.
예를 들면 FAQ 캐싱 같은 것과 Historical Data 같은 것들?
그런데 이런 류는 1번 호출에 수십~수백KB 정도 되었음. 이게 트래픽 과금의 주범임.
위에서 언급한 Pages 는 빌드타임이 1분정도 소요되고 Git commit이 누적되다보니 저걸 활용할 순 없었고.
R2는 AWS S3 같은 Bucket Storage인데, S3처럼. Public Access가 가능하고. CORS 문제도 없더라!
읽기쓰기 Request 당 비용을 과금하고, 트래픽 비용은 안받음.. 오.
서버리스(?) API 캐싱 서버 같은 걸 구성한 셈임.
실험해보니, 버킷업로드 후 1초안에 반영이 되어서 만족.
API 서버에서 트래픽 요금이 100불 넘게 청구되고 있었기 때문에 의미가 있었다.
하루이틀 삽질해서 한달 약 150불 정도 아낀듯.
1줄요약: 클플 ㅆ혜자.
클플이 진짜 최고임 망사용료 이슈만 아니었으면 진짜 GOAT
애초에 한국섭 없는 줄 알았는데, 엔터프라이즈 하면 해주나봄? ㄷㄷ
불법 만화 홈페이지 돌리는 애들은 클플 엔터프라이즈쓴다더라 ㅋㅋ 트래픽 폭탄일텐데 운영이 되나했는데 말이야
클라우드 플레어 뭐 자선사업이냐 왜 트래픽은 무료지
해외에선 트래픽이 싸데 한국이 비싼거라고..
클플은 개인 유저의 희망
진짜 그런듯
이 좋은 것을 니네들만 쓰고 있었단 말이햐!?
협업내에선 내돈(?) 아니고 귀찮으니까 AWS,애져 써서 그런가 ㅋㅋ
좋은 정보 공유 감사. 최근에 일반적인 웹 서비스를 운영하기 위한 인프라를 생각중인데, node 서버는 뭐로 돌리고 있슴?
aws 등을 써도 되긴 할텐데, 비용을 절감하고 싶은 욕구가 있어서 궁금하네
안정적으로 가야 되는건 AWS에서 제일 싼 인스턴스에 LoadBalancer 물려서 쓰고 있고. Node는 설치가 어려운 경우가 없고, 배포도 쉬워서 도커로 올리지도 않고 PM2로 몰아서 씀. Worker 류나 메모리가 좀 필요한 경우에는, IDC에서 1U 짜리에 램 128기가에 코어수 몇십개짜리 돌려서 거기서 돌림.
ㄱㅅ - dc App
dynamodb 저렴하게 쓰다가 기능 확장할 일이 생겼는데 불편해서 rdbms로 옮기려고 하는데 저렴하게 쓰려면 보통 뭘로 돌리나요
supabase같은 의존성 강한 건 좀 피하려고요
dynamo는 document 방식이라 rdbms랑 다르지 않음? 일단 사용량이나 억세스 조건등을 이런저런걸 다 따져봐야 함. 어쩌다 한번씩이면 파이어베이스도 있고 Mongodb altas shared 도 있고. 성능과 용량이 중요하면 IDC에 직접 싼 서버박고 램 늘리는게 답일 수 있고.
혹시나 모르는 혜자 서비스가 있나 물어본건데, 딱히 그런건 없나보네요... 이왕 이렇게 된 거 홈서버 테스트 해보고 가능하면 이 쪽으로 하는 걸로
서버스펙 산정 어떻게 하시는지 물어봐도 되여? 어플리케이션에 따라 다를거같지만 대강이요.. 예를 들어 하루 1000명정도 꾸준히 들어온다면 1cpu에 2GB램으로 충분하다던가요ㅜㅠ
딱히 산정하진 않고 그냥 EC2 제일 싼 것부터 넣어보고 너무 부하 걸려서 느려진다 싶으면 스케일업(사양 올리기) 2cpu 1gb 정도부터 시작함. db는 4core 8기가 정도부터 시작. 왜 1gb냐면.. 500메가도 상관 없는데 메모리부족으로 nuxt 빌드가 안됨.
aws route53에 있는 도메인이랑 연동할때 크게 어려운거없음? 클플에서 도메인 사면 더 간단하긴하지만.. - dc App