본문 바로가기

Dev Dialry/PickMovie

Spec

개인 프로젝트를 진행해 보자고 결심하였으며, 거기에 맞춰 첫번째 어플을 개발하고 나서

그 개발기를 작성해보고자 이 블로그를 시작하게 되었다.


- 어플명 : 픽무비(PickMovie)

- 기능

  1. 일별 국내 박스오피스 순위를 추출하여 해당 순위를 보여줌. (2003년 11월 11일 ~ 이후)

  2. 하루에 하나씩 영화를 추천해 줌. (추천 기준은 랜덤한 날짜를 찍어 그 날짜에 3위 안에 들어간 영화중 평점이 8점 이상인 영화)

  3. 영화 장르별 검색 기능 제공.

  4. 영화 제목으로 검색 기능 제공.

  5. 출연한 배우별 검색 기능 제공.

  6. 각 검색에 모두 정렬 기능을 제공.

  7. 영화 선택시 네이버 영화 상세 페이지 제공.

  8. 어플 하단에 AdMob 추가하기. (수익모델)

- 시스템 스펙

서버는 linode에서 가장 저렴한 NaNode 1GB를 사용하자. 

  > AB 테스트 결과 초당 13건 정도의 요청을 처리.

  > 그 이상의 경우일때 NaNode 1GB 한개 더 추가 후 NodeBalancer 추가.

  > StackScripts 기능을 이용해 서버 구성을 쉽게 하도록 해당 스크립트 작성.


디비 서버의 경우는 Naver Cloud Platform 에서 30만원 쿠폰을 이용해 1년 사용해보자.

  > Postgresql 을 사용해볼까 하였으나 기존 구축한 Mysql 데이터가 있음.

  > 가져오기 귀찮아서 그냥 Mysql로 구축함.


서버 코드의 경우 Typescript + TypeORM + GraphQL Yoga

  > 써보고 싶어서 개인 프로젝트에 사용. 별다른 이유는 없음.


클라이언트는 ReactNative + Expo + Apollo Boost


코드 베이스는 Github을 사용하였다.

- 데이터 구축

박스 오피스 순위 데이터

  > 영화 진흥 위원회  (http://kobis.or.kr/kobis/business/main/main.do)

  > 영화 진흥 위원회 OPEN API 사용


영화 포스터 및 평점 데이터

  > 네이버 영화 API

- 이를 이용해 만든 결과물 (스크린샷)


'Dev Dialry > PickMovie' 카테고리의 다른 글

Graphql Schema and Definition  (0) 2019.01.21
Make ORM entity  (0) 2018.12.13
Run Graphql Server with graphql-yoga  (0) 2018.12.12
Package Setup  (0) 2018.12.10