内容简介:
作为服务器端的JavaScript解释器,Node是一个轻量高效的开发平台,用于构建响应快速、高度可扩展的Web应用。它使用事件驱动和非阻塞的I/O模型,非常适合开发数据密集、对实时响应要求高的分布式应用,在微软、eBay、LinkedIn、雅虎等世界知名公司均有成功的应用。 本书是Node开发基础教程,通过大量示例介绍如何使用HTTP服务器和客户端对象、Connect和Express应用框架、异步执行算法,以及如何结合使用SQL和MongoDB数据库。另外,本书同时针对开发和部署环境给出了实用的Node安装建议,介绍了HTTP服务器和客户端应用的开发,阐述了很多Node使用方式,包括在应用中使用数据库存储引擎,以及在有无Connect/Express Web应用框架的情况下开发网站的方法。本书还介绍了Node的CommonJS模块系统,帮助开发人员实现一些重要的面向对象设计方案。
本书适合具有一定JavaScript和Web应用开发基础知识、打算使用服务器端JavaScript开发高性能Web应用的开发人员阅读。
本书内容包括:
服务器端JavaScript对于Web应用开发的作用
使用Node时,针对性能和吞吐量作出成熟的架构选择
为开发和部署服务器端Web应用安装和使用Node
Connect和Express应用框架的使用
在应用中设置SQL或MongoDB数据库系统
区分并评估同步算法和异步算法
目 录
第1章 Node入门 1
1.1 Node能做什么 1
1.2 为什么要使用Node 3
1.2.1 架构问题:线程,还是异步事件驱动 4
1.2.2 性能和利用率 5
1.2.3 服务器利用率、成本和绿色Web托管服务 6
1.3 Node、Node.js还是Node .JS 7
1.4 小结 7
第2章 安装并配置Node 8
2.1 系统要求 8
2.2 在符合POSIX标准的系统上安装 9
2.3 在Mac OS X上安装开发者工具 9
2.3.1 在home目录下安装 9
2.3.2 在系统级目录下安装Node 11
2.3.3 在Mac OS X上使用MacPorts安装 12
2.3.4 在Mac OS X上使用homebrew安装 12
2.3.5 在Linux上使用软件包管理系统安装 12
2.3.6 同时安装并维护多个Node 13
2.4 验证安装成功与否 14
2.4.1 Node命令行工具 14
2.4.2 用Node运行简单的脚本 15
2.4.3 用Node启动服务器 16
2.5 安装npm——Node包管理器 16
2.6 系统启动时自动启动Node服务器 17
2.7 小结 22
第3章 Node模块 23
3.1 什么是模块 23
3.1.1 Node模块 24
3.1.2 Node解析require ('module')的方式 24
3.2 Node包管理器 28
3.2.1 npm包的格式 29
3.2.2 查找npm包 30
3.2.3 使用npm命令 31
3.2.4 Node包版本的标识和范围 38
3.2.5 CommonJS模块 39
3.3 小结 40
第4章 几种典型的简单应用 41
4.1 Math Wizard 41
4.2 不依赖框架的实现 41
4.2.1 路由请求 42
4.2.2 处理URL查询参数 43
4.2.3 乘法运算 44
4.2.4 其他数学函数的执行 45
4.2.5 扩展Math Wizard 48
4.2.6 长时间运行的运算(斐波那契数) 48
4.2.7 还缺什么功能 51
4.2.8 使用Connect框架实现Math Wizard 52
4.2.9 安装和设置Connect 52
4.2.10 使用Connect 53
4.3 使用Express框架实现Math Wizard 55
4.3.1 准备工作 55
4.3.2 处理错误 59
4.3.3 参数化的URL和数据服务 60
4.4 小结 64
第5章 简单的Web服务器、EventEmitter和HTTP客户端 65
5.1 通过EventEmitter发送和接收事件 65
5.2 HTTP Sniffer——监听HTTP会话 67
5.3 基本的Web服务器 69
5.4 MIME类型和MIME npm包 78
5.5 处理cookie 79
5.6 虚拟主机和请求路由 79
5.7 发送HTTP客户端请求 79
5.8 小结 81
第6章 存取数据 83
6.1 Node的数据存储引擎 83
6.2 SQLite3——轻量级的进程内SQL引擎 83
6.2.1 安装SQLite 3 83
6.2.2 用SQLite3实现便签应用 84
6.2.3 在Node中使用其他SQL数据库 95
6.3 Mongoose 96
6.3.1 安装Mongoose 96
6.3.2 用Mongoose实现便签应用 97
6.3.3 对MongoDB数据库的其他支持 102
6.4 如何实现用户验证 102
6.5 小结 104
《你是这样的人》内容简介:本书从中国共产党成立至今的时间轴上,选择中国共产党人精神谱系中具有代表性的14个精神坐标,梳理每一
《中国智慧互联投资发展报告(2017)》内容简介:本书围绕智慧互联产业的内涵、体系、政策、技术以及投资发展进行了全方位的分析研
《极简父母法则:教出快乐、自信、独立的孩子》内容简介:爱默生曾经说过,我们为孩子的美丽和幸福感到极大的欢乐,这欢乐使我们的
《远去的星光》内容简介:本书为“凤凰枝文丛”之一种,系长期执教于日本金泽大学的李庆教授的历年学术随笔的集合,全书分为“远去
本书是朱利安•阿桑奇目前为止唯一的一部著作,甚至可称为“半部自传”。它是一部见证互联网改变人类历史的伟大纪实文学作品,讲述
不懂Word Excel PPT还敢拼职场-高手指引-赠送多维度学习套餐 本书特色 一个菜鸟用Excel改变职场的真实故事。如果说有什么技能是快速通关职场**技...
详解AutoCAD中文版家具设计-[超值视频教学实战版]-附赠光盘 本书特色 本书针对当今日益增长的个性家具设计业,通过作者在实际工作中积累的一些经典案...
《小学生必背文言文》内容简介:本书包含小学统编语文教材中的短篇文言文和扩展的适合小学生阅读的文言文篇目,一共80篇,文言文来
《4D打印:改变未来商业生态》内容简介:相较于3D打印的蔚然成风,横空出世的4D虽说还有点显得冷清,却给人们打开了一扇更为广阔的
《欧洲企业管理经典案例解析》内容简介:本书案例包括的企业有:大众、SAP公司、飞利浦、诺基亚、雀巢、宝马、奔驰、西门子、壳牌集
这是一本图文并茂的网络管理技术书籍,旨在让广大读者理解TCP/IP的基本知识、掌握TCP/IP的基本技能。书中讲解了网络基础知识、TC
本书是关于ML程序设计的经典教材,详细介绍如何使用ML语言进行程序设计,并讲解函数式程序设计的基本原理。书中含有大量例子,涵
即学即用-Excel 2010人力资源管理实战应用宝典-含1CD价格 本书特色 从事人力资源管理工作的你,是否厌倦了枯燥的数据统计、简单重复的报表核算,想要游刃...
HIGHLIGHTC++ConcurrencyinActionisthefirstbooktomarkettoshowhowtotakeadvantageoft...
《Struts2权威指南:基于WebWork核心的MVC开发》介绍的Struts2已经完全超出了Struts1框架原有的高度,Struts2建立在Struts1...
《小学生漫画抗挫力·全3册(新版)》内容简介:小学生漫画抗挫力(全3册)是一套原创少儿心灵成长书。本书分为《挫折承受力》《心
本书共由三章组成,第一章“网络安全篇”介绍了网络安全的概念、网络安全的问题及对策、漏洞资料。第二章“黑客揭密篇”介绍了黑
《BLOG启示录:WordPress博客建设与经营》分三大部分,共17章。第一部分(1~5章)主要是介绍Web2.0、博客,以及LAMP的安装和架设,
JenniferHudsonJenniferHudsonisanauthorinthefieldsofcontemporarydesignandarchitec...
电子商务技术基础-(第2版) 本书特色 《电子商务技术基础》(第2版)可作为高等院校电子商务、信息管理、计算机应用、国际贸易类专业本科生或研究生的教材或教学参考...