server 2

EC2 deploy server: 프로세스를 백그라운드에서 실행시키기

EC2에 원격 접속하여 sudo node app.js 등의 명령어로 서버를 켜둬봐야 원격접속을 끊는 순간 서버가 꺼지기 일쑤다. 어떻게 해결해야할까? node라면 pm2 등을 이용한다 node의 경우는 forever, pm2 등 다양한 패키지를 제공한다. 이를 사용하면 프로세스가 충돌나서 뒤져도 다시 실행시킬 수 있는 안정성을 보장 받기 때문에, 가장 올바른 방법이다. 해당 패키지들은 sudo npm install -g "패키지 이름"으로 설치가 가능하다. 해당 패키지로 앱을 실행시킨 뒤, exit 명령어를 입력해 원격접속을 종료하면 아마 프로세스가 계속 살아있을 것이다. 패키지 없이 실행하기 하지만 npm 업데이트 등의 이슈 발생 혹은 node가 아닌 다른 서버의 경우라면 어쩔텐가?(물론 버전 호환 문..

IT 2019.10.15

CORS(Cross-Origin Resource Sharing)와 Django

CORS란 무엇인가? CORS(Cross-Origin Resource Sharing)란 웹 페이지 상의 제한된 리소스를 최초 자원이 서비스된 도메인 밖의 다른 도메인으로부터 요청할 수 있게 허용하는 구조이다(위키백과). 모노리틱 아키택처의 프로젝트에서는 이를 몰라도 별 문제가 없을 듯하다. 문제 상황은 MSA에서 개발할 때 발생한다(근본적인 문제는 도메인과 포트가 다르기 때문이다. 요즘 MVVM node 프로젝트는 프론트엔드와 백엔드가 셋트로 제공되기 때문에 문제가 되지 않는 것 처럼 보일 뿐이다. 만약 MSA이더라도 한 도메인, 한 포트에서 요청을 받아 내부적으로 알아서 처리하는 구조라면 django와 함께 사용하여도 전혀 문제가 되지 않는다). 프론트엔드앱에서 API백엔드서버(Django rest f..

IT 2019.08.03