Today I Learned
-
GCP app engine deployToday I Learned 2020. 2. 7. 15:07
문제 이번 프로젝트는 Amazon AWS가 아닌 GCP app engine을 이용해 deploy를 시도해보았다. gcloud SDK를 설치하고 command line 만을 이용해서 프로젝트를 생성하고 로컬 환경에 있는 프로젝트를 원격으로 deploy 할 수 있다. 해결 package.json app.yaml 설치 및 방법 출처 https://cloud.google.com/appengine/docs/flexible/nodejs/runtime Node.js 런타임 | Node.js 문서용 App Engine 가변형 환경 | Google Cloud 개요 Node.js 런타임은 애플리케이션의 코드 및 종속 항목을 설치하고 애플리케이션을 실행하는 소프트웨어 스택입니다. 이 런타임은 app.yaml에서 runtim..
-
Youtube data API quota limitToday I Learned 2020. 2. 5. 11:47
문제 유튜버 랭킹 웹 서비스 프로젝트는 youtube에서 제공하는 API를 얼마나 잘 활용하느냐에 따라 프로젝트의 성공 여부가 갈린다고 해도 과언이 아니다. API 사용 연습 도중, 문제점이 발견되었다. youtube에 따로 요청을 하지 않으면, APP KEY 당 하루 할당량이 10000이라는 사실이다. 10000이라는 수치가 요청 10000번이 아니고 요청에 따라 가중치를 달리 주기 때문에 꽤 적은 숫자라는 것을 알 수 있다. 해결 https://developers.google.com/youtube/v3/determine_quota_cost YouTube Data API (v3) - Quota Calculator | Google Developers YouTube Data API (v3) - Quota ..
-
Github issue의 중요성Today I Learned 2020. 2. 5. 11:37
문제 유튜버 랭킹 웹 서비스 프로젝트 개발 중, 업데이트 이전의 데이터들을 백업할 필요성이 생겼다. 기존에 mongoose의 메소드를 이용해 구현할 수 있으나, 다른 개발자가 모듈화하지 않았을까 하는 생각해 npm을 둘러봤다. 역시 mongodb-backup 이라는 모듈이 존재했다. 그러나, 비어있는 폴더만 생성되는 문제가 발생했다. 해결 구글링한 결과, 이 모듈에서 사용한 메소드가 더이상 mongodb에서 지원하지 않아 폴더만 생성하고 백업 데이터는 나오지 않은 것이였다. 2 가지 방법이 있는데 첫 번째는 mongoose를 다운그레이드하는 방법. 두 번째는 다른 누군가가 구현한 개선된 모듈을 사용하는 것이다. 한번도 찾아본 적 없는 issue를 둘러보니 모든 해결책이 존재했다. 다운그레이드 했더니 정상..
-
http vs https vs http2Today I Learned 2020. 1. 22. 11:35
HTTP/1.1 HTTP(HyperText Tranfer Protocol)는 WWW 상에서 정보를 주고 받는 프로토콜이다. 클라이언트가 서버에 HTTP를 통해 웹 페이지나 이미지 정보를 요청하면 서버는 이 요청에 응답하여 요구하는 정보를 제공하게 된다. 결국, HTTP는 클라이언트와 서버가 자원을 주고 받을 때 쓰는 통신 규약이다. HTTP는 텍스트 교환이다. 바이너리 데이터로 되어있는 것도 아니고 단순 텍스트를 주고 받기 때문에 누군가 네트워크에서 신호를 가로채어 본다면 내용이 노출된다. HTTPS HTTPS는 인터넷 상에서 정보를 암호화하는 SSL(Secure Socket Layer)프로토콜을 이용하여 클라이언트와 서버가 데이터를 주고 받는 통신 규약이다. HTTP 메세지(text)를 암호화하는 것이..