×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Node.js 那些事儿 作者:刘喜东
Slide 2
Slide 2 text
2 Content What Why How Where Who
Slide 3
Slide 3 text
3 Content What Why How Where Who
Slide 4
Slide 4 text
4 是什么? ➢ 学名: Node.js ➢ 辟谣:核心由 C/C++ 编写 ➢ 本质:一个 JavaScript 虚拟机 ➢ 托管: https://github.com/joyent/node ➢ 概括: evented I/O for v8 javascript
Slide 5
Slide 5 text
5 Content What Why How Where Who
Slide 6
Slide 6 text
6 Apache+mod_php
Slide 7
Slide 7 text
7 Node.js
Slide 8
Slide 8 text
8 Node.js VS Apache+mod_php ➢ 独立完成 VS 细化分工 ➢ 面向事件编程 VS 面向对象编程 ➢ 英雄主义 VS 人海战术 ➢ 劳模 VS 普通青年
Slide 9
Slide 9 text
9 Node.js 的优点 学习成本低 内存占用少 CPU 利用率高
Slide 10
Slide 10 text
10 Content What Why How Where Who
Slide 11
Slide 11 text
11 离了模块就活不了 ➢ npm ➢ CommonJS ➢ 核心模块概览
Slide 12
Slide 12 text
npm ➢ Node Package Manager ➢ pear 、 gem 、 apt ➢ curl http://npmjs.org/install.sh | sudo sh
Slide 13
Slide 13 text
CommonJS ➢ 它是一套 API 。 ➢ 它要为 Web 服务器 , 桌面和命令行应用创 建一个完整的 JavaScript 生态系统,不 仅仅只为浏览器。 ➢ 它定义了一组标准和规范,如模块、包、 文件系统等。
Slide 14
Slide 14 text
核心模块 ➢ http/https ➢ url ➢ os ➢ fs ➢ assert ➢ ... ...
Slide 15
Slide 15 text
代码示例 ➢ 功能:根据坐标获取小区列表的 API 。 ➢ 方式: POST ➢ 返回: JSON ➢ 测试: ab -c 100 -n 1000 ➢ 网址: https://github.com/liuxd/MyNodeJS
Slide 16
Slide 16 text
Apache+mod_php
Slide 17
Slide 17 text
Node.js
Slide 18
Slide 18 text
18 Content What Why How Where Who
Slide 19
Slide 19 text
19 用武之地 ➢ IO 频繁 ➢ CPU 利用率低 ➢ 内存导致并发瓶颈
Slide 20
Slide 20 text
20 应用场景 ➢ 聊天系统 ➢ 投票 ➢ 点击量统计 ➢ 秒杀 ➢ 业务耦合较低的 api ➢ ... ...
Slide 21
Slide 21 text
21 Content What Why How Where Who
Slide 22
Slide 22 text
22 谁在用? ➢ Instagram—— 基于 Node.js 开发了 node2dm ➢ LinkedIn—— 移动应用业务 ➢ Github——NodeLoad, 存档下载服务器 ➢ —— 淘宝 用 Node.js 实现 MyFOX ➢ 微软、雅虎、 ebay
Slide 23
Slide 23 text
23 By the way ➢ NAE——Node App Engine ➢ http://registry.npmjs.vitecho.com ➢ npm config set registry “XXOO” ➢ PHP 版的 Node.js——React
Slide 24
Slide 24 text
Thank you very much.