해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

이 책은 Node.js를 이용한 웹 서버 제작 방법을 단계별로 설명하면서 그 과정에서 파생하는 이슈나 문제 해결 과정을 담고 있다. 서버를 개발할 수 있는 언어는 다양하지만 왜 Node.js를 사용해야 하는지를 다른 언어와의 비교를 통해 설명하였고, 저자의 경험을 토대로 콜백(callback) 지옥에 대한 해법도 제시한다.
여러분이 린(lean)하게 개발해야 하는 스타트업 개발자이거나 자바스크립트나 웹 개발을 공부하였으나 스스로 서버를 만드는 데 부담을 가졌던 개발자라면 이 책에서 그 해법을 구할 수 있을 것이다.
쉬운 설명과 실전 예제로 구성한 Node.js 기반의 웹 서버 제작법!
효율적인 구성으로 단시간에 배우는 Node.js 프로그래밍!
이 책은 Node.js를 이용한 웹 서버 제작 방법을 단계별로 설명하면서 그 과정에서 파생하는 이슈나 문제 해결 과정을 담고 있다. 서버를 개발할 수 있는 언어는 다양하지만 왜 Node.js를 사용해야 하는지를 다른 언어와의 비교를 통해 설명하였고, 저자의 경험을 토대로 콜백(callback) 지옥에 대한 해법도 제시한다.
여러분이 린(lean)하게 개발해야 하는 스타트업 개발자이거나 자바스크립트나 웹 개발을 공부하였으나 스스로 서버를 만드는 데 부담을 가졌던 개발자라면 이 책에서 그 해법을 구할 수 있을 것이다.
작가정보
저자(글) 정민석
(주)꿈많은청년들의 CTO이자 Google Cloud Platform User Group Korea(GCPUG Korea)의 운영자다. (꿈많은청년들은 Google Cloud Platform 한국과 Kakao Chatbot의 파트너사다.)
온라인상에서는 Harrison Jung으로 더 많이 알려졌다. 2012년부터 Node.js를 사용했으며, Node.js로 비트코인 거래소를 만든 경험이 있다. 최근에는 챗봇을 전문으로 개발하면서 머신러닝과 쿠버네티즈에 관심을 가지고 있다.
목차
- CHAPTER 1 인터넷과 웹 1
1.1 웹과 자바스크립트의 발달 1
1.2 웹 서버의 역사: CGI부터 Node.js까지 2
1.3 크롬과 V8 엔진 그리고 Node.js 3
1.4 Node.js의 현재 그리고 미래 4
1.5 Node.js와 Electron 6
CHAPTER 2 Node.js의 특징과 장단점 7
2.1 자바스크립트 기반의 Node.js 7
2.2 동기식과 비동기식, 싱글 스레드와 멀티 스레드 8
2.3 다른 스크립트 언어와의 차이점 9
CHAPTER 3 개발을 위한 사전 준비 11
3.1 Node.js 설치하기 11
3.2 처음으로 구동하는 Node.js 서버 15
3.3 Forever Node.js 16
CHAPTER 4 Node.js의 Hello World 18
4.1 Start Server 18
4.2 응답 헤더 20
CHAPTER 5 Node.js 시작하기 25
5.1 상태 파악하기 ― console 26
5.2 모듈 사용하기 ― require 28
5.3 서버 만들기(1) ― http 31
5.4 서버 만들기(2) ― https 36
5.5 서버 만들기(3) ― http, https 37
5.6 파일 사용법 입문 ― file system 40
5.7 그 외의 파일 사용법 45
5.8 간단한 크롤링 서버 만들기 48
CHAPTER 6 기능 확장하기 56
6.1 NPM이란? 56
6.2 설치하기 57
6.3 NPM 사용하기 61
CHAPTER 7 멀티 스레드 66
7.1 싱글 스레드와 멀티 스레드 66
7.2 자식 프로세스 만들기 67
7.3 클러스터 68
CHAPTER 8 데이터베이스 77
8.1 RDBMS 사용하기 78
8.2 NoSQL 사용하기 88
CHAPTER 9 로그인과 인증 구현 96
9.1 쿠키 처리 97
9.2 Crypto를 활용한 고급 암호화 102
CHAPTER 10 실시간 데이터 통신 104
10.1 http 통신의 이해 104
10.2 Comet ― LongPolling 105
10.3 WebSocket과 Socket.io 109
CHAPTER 11 Gzip을 사용한 데이터 압축 117
11.1 트래픽을 줄이는 가장 손쉬운 방법 ― 압축 118
11.2 zlib 활용하기 118
CHAPTER 12 에러 및 예외 처리 121
12.1 에러와 예외 처리 121
12.2 에러 처리 122
12.3 예외 처리 123
12.4 에러 저장 124
CHAPTER 13 Callback 함수 대응하기 129
13.1 Callback이란? 129
13.2 Callback 함수의 문제점과 해결책 130
CHAPTER 14 URL Route 137
14.1 요청의 형태와 방식 137
14.2 POST와 GET 구분해서 받기 140
14.3 요청에 따른 분류 방법 148
CHAPTER 15 HTTP 헤더 152
CHAPTER 16 Node.js를 활용하여 REST API 구현하기 157
16.1 Node.js를 활용한 서버 구축 157
16.2 Express 사용하기 159
16.3 REST API 구현 준비 163
16.4 REST API 실제 구현하기 164
CHAPTER 17 페이스북 챗봇 만들기 167
17.1 페이스북 챗봇이란? 167
17.2 페이스북 챗봇 만들기 사전 준비 168
17.3 에코봇 만들기 177
CHAPTER 18 Node.js를 사용하여 구글 스프레드시트 만들기 184
18.1 구글 APIs 서비스 계정 생성하기 184
18.2 서비스 계정을 사용하여 구글 스프레드시트 만들기 187
APPENDIX A 구글 클라우드 플랫폼 사용하기 193
APPENDIX B Google Cloud Functions 199
찾아보기 205
책 속으로
웹 서버가 하는 많은 일 가운데 하나는 파일을 다루는 일입니다. 사용자에게 파일을 다운로드하도록 하거나, 웹 페이지도 결국은 파일로 되어 있는 부분을 읽어서 사용자에게 보여줘야 하는 것이니까요. 물론 그 과정에서 다양한 일이 일어나기도 하지만, 기본적으로 모든 것은 파일에서 출발함에는 틀림이 없습니다.
_40쪽
아주 간단한 코드들은 우리가 직접 구현할 수도 있고, 인터넷 포털사이트(주로 구글과 스택 오버플로겠죠?)의 도움을 받아서 구현하는 방법도 있을 것입니다. 하지만 작은 모듈들은 그렇게 하는 것이 가능하더라도 큰 모듈, 예를 들면 이미지를 다루는 내용은 매우 복잡하므로 그런 것을 직접 모두 구현하기에는 낭비일 것입니다. 그런 경우에는 NPM 을 사용하는 것이 현명합니다. 더구나 많은 사람이 사용하는 NPM 은 지속적인 관리를 통해 버그가 수정되기도 합니다. 업데이트된 NPM 은 간단한 명령어를 통해 업데이트를 하면 손쉽게 관리할 수 있습니다.
_57쪽
클러스터(cluster, 다중화)는 자식 프로세스와 달리, 같은 작업을 여러 명이 동시에 작업하는 것으로 이해하면 됩니다. 자식 프로세스를 자동차 공장에서 하나의 자동차를 각 라인에 주어진 임무에 따라 다른 작업을 하는 것으로 비유한다면, 클러스터는 여러 개체가 같은 작업을 병렬적 으로 진행하는 것으로 이해할 수 있습니다.
_68쪽
프로그램을 만들 때는 데이터베이스와 연동하는 작업을 빼놓을 수 없습니다. 예전에는 보통
RDBMS(Relational Database Management System) 라고 하여 관계형 데이터베이스 시스템, 쉽게 말해 MySQL , MariaDB , Oracle 과 같은 SQL 을 많이 사용하였으나, 요즘에는 NoSQL 이라는 비 관계형 데이터베이스, 즉 예전과 달리 비정형 데이터를 다루는 데이터베이스도 많이 사용합니다. 많은 사람이 NoSQL 의 ‘No -’를 ‘No(아니다) ’로 오해하지만, 전문가들은 ‘Not Only ’로 이해합니다.
_77쪽
웹 서버를 구축하다 보면 트래픽 때문에 고민이 될 때가 있습니다. 그런 경우 대부분 이미지 파일이나 멀티미디어 파일로 인해 트래픽이 많은 경우도 있으나, 간혹 대량의 텍스트 데이터(웹 페이지, 자바스크립트 파일, CSS 파일) 때문인 경우도 있습니다. 이때는 텍스트 데이터를 압축하여 전송하면 많은 트래픽을 절감할 수 있습니다.
_117쪽
출판사 서평
이 책의 주요 내용
ㆍ 서버 개발을 위한 사전 준비 ─ 개념에서 설치까지
ㆍ 모듈과 파일 사용하기
ㆍ 간단한 크롤링 서버 만들기
ㆍ 멀티 스레드와 클러스터
ㆍ MySQL과 레디스
ㆍ 로그인과 인증 구현하기
ㆍ 실시간 데이터 통신 ─ Comet과 WebSocket
ㆍ 에러와 예외 처리
ㆍ Callback 함수 대응하기
ㆍ 웹 브라우저 요청 처리하기 ─ URL Route
ㆍ REST API 구현하기
ㆍ 챗봇 만들기 ─ 에코봇
ㆍ 구글 스프레드시트 만들기
기본정보
ISBN | 9791188621293 |
---|---|
발행(출시)일자 | 2018년 08월 06일 |
쪽수 | 220쪽 |
크기 |
189 * 246
* 13
mm
/ 539 g
|
총권수 | 1권 |
Klover 리뷰 (4)
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집 (0)
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립