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
69
Nginx基础知识
liuxd
5
330
vagrant介绍
liuxd
2
290
PHP5.3、PHP5.4的特性介绍与深度挖掘
liuxd
3
300
Other Decks in Programming
See All in Programming
株式会社 Sun terras カンパニーデック
sunterras
0
250
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
850
The Flutter Journey of Building a Live Streaming App — With a Side of Performance Tuning
u503
1
100
実践AIチャットボットUI実装入門
syumai
7
2.5k
CSC305 Lecture 05
javiergs
PRO
0
210
Breaking Up with Big ViewModels — Without Breaking Your Architecture (droidcon Berlin 2025)
steliosf
PRO
1
350
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
190
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
1k
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
400
CSC305 Lecture 02
javiergs
PRO
1
260
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.6k
XP, Testing and ninja testing ZOZ5
m_seki
3
360
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
Fireside Chat
paigeccino
40
3.7k
Music & Morning Musume
bryan
46
6.8k
For a Future-Friendly Web
brad_frost
180
9.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Unsuck your backbone
ammeep
671
58k
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.