Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Node.js那些事儿
Search
Allen Liu
May 27, 2012
Programming
2
1.6k
Node.js那些事儿
课题分享
Allen Liu
May 27, 2012
Tweet
Share
More Decks by Allen Liu
See All by Allen Liu
字符集科普知识
liuxd
1
67
Nginx基础知识
liuxd
5
330
vagrant介绍
liuxd
2
280
PHP5.3、PHP5.4的特性介绍与深度挖掘
liuxd
3
290
Other Decks in Programming
See All in Programming
エラーって何種類あるの?
kajitack
5
140
Perlで痩せる
yuukis
1
680
eBPFを用いたAIネットワーク監視システム論文の実装 / eBPF Japan Meetup #4
yuukit
3
750
Benchmark
sysong
0
130
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
10
1.8k
Blueskyのプラグインを作ってみた
hakkadaikon
1
510
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
200
C++20 射影変換
faithandbrave
0
350
Datadog RUM 本番導入までの道
shinter61
1
250
Use Perl as Better Shell Script
karupanerura
0
690
「兵法」から見る質とスピード
ickx
0
260
インターフェース設計のコツとツボ
togishima
2
700
Featured
See All Featured
A Tale of Four Properties
chriscoyier
159
23k
How GitHub (no longer) Works
holman
314
140k
Bash Introduction
62gerente
614
210k
Scaling GitHub
holman
459
140k
A better future with KSS
kneath
239
17k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Statistics for Hackers
jakevdp
799
220k
Music & Morning Musume
bryan
46
6.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
180
53k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Done Done
chrislema
184
16k
Transcript
Node.js 那些事儿 作者:刘喜东
2 Content What Why How Where
Who
3 Content What Why How Where
Who
4 是什么? ➢ 学名: Node.js ➢ 辟谣:核心由 C/C++ 编写 ➢
本质:一个 JavaScript 虚拟机 ➢ 托管: https://github.com/joyent/node ➢ 概括: evented I/O for v8 javascript
5 Content What Why How Where
Who
6 Apache+mod_php
7 Node.js
8 Node.js VS Apache+mod_php ➢ 独立完成 VS 细化分工 ➢ 面向事件编程
VS 面向对象编程 ➢ 英雄主义 VS 人海战术 ➢ 劳模 VS 普通青年
9 Node.js 的优点 学习成本低 内存占用少 CPU 利用率高
10 Content What Why How Where
Who
11 离了模块就活不了 ➢ npm ➢ CommonJS ➢ 核心模块概览
npm ➢ Node Package Manager ➢ pear 、 gem 、
apt ➢ curl http://npmjs.org/install.sh | sudo sh
CommonJS ➢ 它是一套 API 。 ➢ 它要为 Web 服务器 ,
桌面和命令行应用创 建一个完整的 JavaScript 生态系统,不 仅仅只为浏览器。 ➢ 它定义了一组标准和规范,如模块、包、 文件系统等。
核心模块 ➢ http/https ➢ url ➢ os ➢ fs ➢
assert ➢ ... ...
代码示例 ➢ 功能:根据坐标获取小区列表的 API 。 ➢ 方式: POST ➢ 返回:
JSON ➢ 测试: ab -c 100 -n 1000 ➢ 网址: https://github.com/liuxd/MyNodeJS
Apache+mod_php
Node.js
18 Content What Why How Where
Who
19 用武之地 ➢ IO 频繁 ➢ CPU 利用率低 ➢ 内存导致并发瓶颈
20 应用场景 ➢ 聊天系统 ➢ 投票 ➢ 点击量统计 ➢ 秒杀
➢ 业务耦合较低的 api ➢ ... ...
21 Content What Why How Where
Who
22 谁在用? ➢ Instagram—— 基于 Node.js 开发了 node2dm ➢ LinkedIn——
移动应用业务 ➢ Github——NodeLoad, 存档下载服务器 ➢ —— 淘宝 用 Node.js 实现 MyFOX ➢ 微软、雅虎、 ebay
23 By the way ➢ NAE——Node App Engine ➢ http://registry.npmjs.vitecho.com
➢ npm config set registry “XXOO” ➢ PHP 版的 Node.js——React
Thank you very much.