
Js에서 MongoDB를 사용하려면 DB Client 역할을 하는 도구가 있어야 합니다. mongoose라이브러리 • MongoDB에 데이터를 쉽게 읽고 쓰게 해주는 Js라이브러리입니다. • ODM(Object Document Mapper)라고도 부릅니다. • Js의 객체(Object)와 MongoDB의 문서(Document)사이에서 매핑을 수행하는 도구입니다. • 객체를 MongoDB데이터베이스의 문서로 쉽게 변환 하거나, 문서를 객체로 변환해 주는 작업을 수행합니다. 관계형 DB 와 MongoDB mongoose의 컬렉션(Collection)이란? MongoDB에서 문서가 무엇인가 하면 관계형 데이터베이스에서의 하나의 튜플 , 즉 ROW를 의미 하는 것입니다. 또한 MongoDB의 collection..

RDS에 로그인이 되었다 가정하고 필요한 것( Amazon RDS 엔드포인트. 계정명, 비밀번호, 연결할 MySQL DB이름) 1. 해당 프로젝트에 express, mysql2라이브러리 설치하기 # yarn으로 프로젝트를 초기화합니다. yarn init -y # express와 mysql 드라이버를 설치합니다. yarn add express mysql2 2. app.js에서 mysql 정보를 입력해 줍니다. (여기선 AWS RDS 정보사용) // app.js import express from 'express'; import mysql from 'mysql2'; //MySQL 데이터베이스를 Node.js에서 사용할 수 있게 도와주는 라이브러리 const connect = mysql.createConnec..

node.js로 amazon RDS를 VS CODE에 연결하기 위해 설정을 다하고 서버를 켰습니다. 서버를 열자 서버가 연결되었다는 문구가 떠서 다 연결이 됐구나 싶었는데 갑자기 node : events: 492 throw er; // Unhandled 'error' event 에러가 떳습니다. 그 밑에 에러 코드를 읽어 보면 연결이 Timedout이 됐나고 나옵니다. 설정한 코드와 비밀번호가 맞지 않나? 싶어서 다시 다 적어줬지만 그대로 나와서 뭐가 문제지 하면서 살피는 도중 Docker의 mysql포트번호와 로컬의 mysql의 포트번호가 같았을 때 충돌이 난 경험이 있어서 이번에 RDS만들 때 포트번호를 3306 기본 값으로 설정한게 아닌 3308로 설정한걸 깨닫고 mysql 연결설정해주는 곳에 포트..

Request(요청), Response(응답) Request(요청) ■ 클라이언트가 서버로 보내는 메세지를 담는 객체입니다. ■ URL, HTTP 프로토콜, Header, Query Parameter, body data(요청과 함께 전달되는 데이터)등이 포함됩니다. Response(응답) ■ 서버에서 클라이언트로 보내는 메세지를 담은 객체입니다. ■ 상태코드(Status Code), response data, response header등이 포함됩니다. req객체 req.app req 객체를 통해 Express.js의 app객체에 접근할 수 있습니다. req.ip 요청한 Client의 ip주소가 담겨있습니다. req.body Request를 호출할 때 body로 전달된 정보가 담긴 객체입니다. • exp..

RDS(Relational Database Service)란? ● AWS에서 제공하는 분산 관계형 데이터베이스 서비스 입니다. ● 어플리케이션 내에서 관계형 데이터베이스를 간편하게 설정, 운영, 확장이 가능하도록 지원합니다. ● 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같은 소모적인 관리 작업을 자동화 할 수 있습니다. ● Aurora, PostgreSQL, MySQL, MariaDB, ORACLE, SQL Server과 같은 데이터베이스 인스턴스를 제공합니다. RDS의 장점 1. 관리가 용이합니다. 프로젝트 개념정립부터 배포까지 모든 작업을 쉽게 처리할 수 있습니다. 프로덕션용 관계형 데이터 베이스의 성능을 활용할 수 있습니다. 인프라를 프로비저닝하고 데이터베이스 소프트웨어를 설치 및 ..
API(Application Programming Interface) ■ API는 프로그램끼리 소통하도록 연결해주는 역할을 합니다. ■ 서로 다른 소프트웨어나 어플리케이션 간을 연결해주는 매개체이자 약속입니다. 예시1 ▶ 날씨앱을 이용해 내일의 날씨를 조회한다면, 앱은 날씨 정보를 제공하는 서버에게 정보를 요청해야 하는데 이 때, 앱과 날씨 서버간의 통신을 도와주는것이 API입니다. 서로간의 약속을 한것처럼 API는 정해진 규칙 (어떤정보를 어떻게 요청하는가?, 응답은 어떤 형식으로 받는가?)에 따라 날씨 서버에 정보를 요청하는 역할을 담당합니다. 즉, 날씨 앱의 사용자는 API를 통해 서버로 날씨 정보를 요청(Request)하고 서버는 이 요청을 처리한 뒤 최종 날씨 정보를 API를 통해 반환(Resp..

일단 AWS에 가입이 되어있고 카드 등록이 다 된상황이라고 가정하고 시작 합니다. EC2 Instance 생성 • AWS EC2에서는 컴퓨터 하나의 단위를 Instance라는 이름으로 부릅니다. 즉, EC2를 생성한다는것 = 서버컴퓨터 대여 1. 콘솔 홈으로 들어갑니다. 2. Region(지역) 선택 - EC2 Instance가 어떤 지역에서 켜질지 선택합니다. 지역이 가까울수록 접속 속도가 빨라집니다. 3. EC2 Instance 생성 : EC2 서비스 페이지로 이동합니다. 상단 검색창에 EC2를 입력해 첫번째로 나오는 것을 클릭해 이동합니다. 4. EC2 Instance 생성: 운영체제 선택 4 - 1. 애플리케이션 및 OS이미지 선택합니다. ubuntu 선택 Amazon Machine Image(A..

Node.js는 대표적으로 논 블로킹(Non-blocking) I / O, 싱글 스레드(Single Thread), 이벤트 루프(Event Loop)의 특성이 있습니다. 논 블로킹 I / O(Non-Blocking Input / Output) 블로킹 I/O와 논블로킹 I/O는 프로그램의 실행 흐름을 제어하는 방식입니다. 블로킹 방식 - 프로그램이 특정 작업을 수행하는 동안 다른 작업을 중단시키는 방식입니다. 논블로킹 방식 - 프로그램이 여러 작업을 동시에 처리할 수 있는 장점이 있습니다. I/O - 데이터의 입력(Input) / 출력(Output)을 의미하며 파일을 저장하거나, 불러오는 것을 I/O처리한다라고 합니다. 블로킹 I/O ● 한번에 하나의 작업만을 처리할 수 있으며, 호출된 함수가 자신의 작업..