Curzy/Wolsemap

Serverless GAZUAA

Curzy opened this issue · 13 comments

Curzy commented

기존 구조가 ec2안에 메세지큐, 태스크러너, 서버, 데이터베이스 다들어가있었다.

sqlite3는 덤프떠서 s3에 업로드하고 RDS로 띄우자

메세지큐는 SQS로, 서버는 lambda + API gateway로

JS파일 번들링은 해서 어디로 서빙하지 ?

GAZUAA

RDS 비용 너무 많이 들지 않나요?

Curzy commented

@sinwoobang 빌링 대시보드를 안보고있었는데 그러네요 RDS하나가 기존 ec2가격 전체를 잡아먹네요

RDBSless로 변경하시는게 어떨까요. 사실 RDB의 주요 기능들이 꼭 필요한 서비스 같지 않습니다.

Curzy commented

@yangroro 검색결과가 나오지 않는데 키워드나 간단한 설명 부탁드릴 수 있을까요

그냥 RDB 안쓰는걸 얘기한건데요. 과연 RDB가 꼭 필요한가? 라는 질문입니다. 정적 웹페이지나 그에 준하는 수준으로 구현 가능하지 않을까요. RDB를 위한 컴퓨팅 파워는 너무 비싼 자원이 아닐까요.

Curzy commented

DB액세스가 크롤링하는 시간대(00시)에만 몰려있는데 ec2 더 작은걸로 바꾸고 db서비스만 하나 띄워놓는 방법은 어떨까요?

ec2에 DB를 띄우는건 결국 미봉책에 지나지 않는다고 생각합니다. 일단 그 관리 비용(인력과 $)이 문제이고 결국 언젠가 @Curzy 님의 지갑에서 돈이 나가는걸 중단시킬텐데 DB를 없애는 방향이 더 좋지 않을까요.

DB 없이 언어 단에서 분석해서 S3+CloudFront에 덤프 저장해놓고 사용해도 괜찮을 것 같습니다.
0시 기준 데이터로 하루 동안 운영할 거면요.

+) S3 lambda hook이나 Athena를 활용해도 괜찮겠네요.

그리고 그 과정은 EC2 instance로 하는게 아니라 분리되어있는 CI/CD등에서 처리한다면 EC2 자원같은 아주 비싼 자원이 아니라 스토리지 자원만으로도 서비스 할 수 있게 되지 않을까요.

cost를 도메인 비용만 남기는 방법을 생각해냈습니다.
github pages를 활용해서 호스팅을 하고 API 결과는 json으로 git에 푸시하면 됩니다. 그 과정은
https://docs.travis-ci.com/user/cron-jobs/ travis-ci cron-job을 이용해서 주기적으로 푸시하도록 하고요.

이러면 Route53 비용만 남습니다.

@yangroro 크론 잡 무료인가요?

@incleaf 따로 플랜 제한같은게 있지는 않네요.