본문 바로가기

전체 글

(60)
[오픈소스] Armeria https://line.github.io/armeria/
javascript Promise란? Promise 란? 자바스크립트에선는 비동기 처리를 위해 사용되는 라이브러리? 이다. 자바스크립트의 콜백을 통해 비동기 처리를 할 수 있지만 비동기 처리를 순차적으로 처리해야할 경우 에러 및 예외처리가 어렵고 콜백 중첩으로 인한 코드의 복잡도가 증가 하는 단점을 해결하기위해 ES6에서는 언어적 차원으로 지원하게 되었다. Promise의 생성 방법 const PROMISE_TEST = function(str){ return new Promise(function(resolve, reject){ if(str){ resolve(str); }else{ reject(str) //undefined } }); } PROMISE_TEST('변진환').then(function(result){ console.log(resu..
노드란 무엇일까? 노드란 무엇일까? 노드는 javascript를 이용해서 서버를 만들 수 있는 개발 도구이다. 노드 라고도 하고 노드제이에스라고 부른다. 노드(node.js)라는 개발 도구가 생긴이유는? 노드는 2009년 라이언달(Ryan Dahl) 이 만들었는데 그 당시에는 웹 서버에 파일을 업로드 할때, 업로드가 완료되기 전까지 웹 서버에서 데이터를 조회하거나 하는 등의 작업을 할 수 없었는데 이 문제를 해결하기 위해 새로운 방식의 서버 개발도구를 만들기 시작했는데 그것이 노드 이다. 노드의 장점 노드는 요청을 동시에 처리할 수 있는 비동기 입출력(논블로킹 입출력, Non-Blocking IO) 방식을 적용했다. 이벤트 기반 입출력(Event Driven I/O) 방식 이다. 크롬 V8 자바스크립트 엔진 V8엔진은 필..
몽고디비란? 몽고디비란? 비관계형 데이터베이스 이며 NoSQL 또는 Not Only SQL이라고 한다. NoSQL을 주목하는 이유와 관계형 데이터베이스 와 다른점? 관계형 데이터 베이스는 신뢰도는 높지만 SQL문을 읽어들이고 실행하는데 많은 리소스를 사용합니다. 이 때문에 성능이 떨어지는 경우가 많습니다. 이에 반해 NoSQL은 성능을 최우선으로 생각하기 때문에 실시간으로 처리해야 하는 경우나 대용량 트래픽을 감당할 수 있는 메세징 시스템 등에 활용됩니다. 특히 클라우드 서비스로 서버를 구성하는 경우가 많아지면서 많은 사용자를 수용하거나 시스템 자원을 적게 소모하는 NoSQL 데이터베이스에 점점더 관심을 갖게 되었습니다. 몽고디비에서 컬렉션이란? 데이터가 모인 하나의 단위를 컬렉션이라 하고 컬렉션에는 컬럼의 형태로 ..