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.5k
Node.js那些事儿
课题分享
Allen Liu
May 27, 2012
Tweet
Share
More Decks by Allen Liu
See All by Allen Liu
字符集科普知识
liuxd
1
64
Nginx基础知识
liuxd
5
320
vagrant介绍
liuxd
2
270
PHP5.3、PHP5.4的特性介绍与深度挖掘
liuxd
3
290
Other Decks in Programming
See All in Programming
Haze - Real time background blurring
chrisbanes
1
510
htmxって知っていますか?次世代のHTML
hiro_ghap1
0
330
Go の GC の不得意な部分を克服したい
taiyow
3
780
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
330
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
220
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
2
380
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
360
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
2
680
MCP with Cloudflare Workers
yusukebe
2
220
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
2
230
テストコード文化を0から作り、変化し続けた組織
kazatohiei
2
1.5k
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
760
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Mobile First: as difficult as doing things right
swwweet
222
9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
For a Future-Friendly Web
brad_frost
175
9.4k
Writing Fast Ruby
sferik
628
61k
Site-Speed That Sticks
csswizardry
2
190
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Fireside Chat
paigeccino
34
3.1k
Faster Mobile Websites
deanohume
305
30k
How STYLIGHT went responsive
nonsquared
95
5.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
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.