SlideShare a Scribd company logo
Node.js 那些事儿
  作者:刘喜东
Content
1.   What
2.   Why
3.   How
4.   Where
5.   Who




             2
Content
1.   What
2.   Why
3.   How
4.   Where
5.   Who




             3
是什么?
•




    学名: Node.js
•




    辟谣:核心由 C/C++ 编写
•




    本质:一个 JavaScript 虚拟机
•




    托管: https://github.com/joyent/node
•




    概括: evented I/O for v8 javascript




                                         4
Content
1.   What
2.   Why
3.   How
4.   Where
5.   Who




             5
Apache+mod_php




                 6
Node.js




          7
Node.js VS
Apache+mod_php
•




    独立完成 VS 细化分工
•




    面向事件编程 VS 面向对象编程
•




    英雄主义 VS 人海战术
•




    劳模 VS 普通青年




                       8
Node.js 的优点
学习成本低
内存占用少
C PU 利用率高




              9
Content
1.   What
2.   Why
3.   How
4.   Where
5.   Who




             10
离了模块就活不了
•




    npm
•




    CommonJS
•




    核心模块概览




               11
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
A p a c he +mo d _p hp
No d e . js
Content
1.   What
2.   Why
3.   How
4.   Where
5.   Who




             18
用武之地
•




    IO 频繁
•




    CPU 利用率低
•




    内存导致并发瓶颈




               19
应用场景
•




    聊天系统
•




    投票
•




    点击量统计
•




    秒杀
•




    业务耦合较低的 api
•




    ... ...



                  20
Content
1.   What
2.   Why
3.   How
4.   Where
5.   Who




             21
谁在用?
•




    Instagram—— 基于 Node.js 开发了
    node2dm
•




    LinkedIn—— 移动应用业务
•




    Github——NodeLoad, 存档下载服务器
•




    淘宝——用 Node.js 实现 MyFOX
•




    微软、雅虎、 ebay



                                 22
By the way
•




    NAE——Node App Engine
•




    http://registry.npmjs.vitecho.com
•




    npm config set registry “XXOO”
•




    PHP 版的 Node.js——React




                                        23
Thank you very very much.

More Related Content

PPT
Node分享 展烨
PPTX
Node.js中间件 connect模块深入浅出
PDF
NodeJS基礎教學&簡介
PDF
React.js what do you really mean?
PPTX
Getting started with test automation
PDF
SITCON 2016 ─ Modern Front-End Workflow with Webpack
PPTX
NODEjs Lesson1
PDF
Node js实践
Node分享 展烨
Node.js中间件 connect模块深入浅出
NodeJS基礎教學&簡介
React.js what do you really mean?
Getting started with test automation
SITCON 2016 ─ Modern Front-End Workflow with Webpack
NODEjs Lesson1
Node js实践

What's hot (20)

PDF
Node.js從無到有 基本課程
PPTX
使用 Visual Studio Code 建構 JavaScript 應用程式
PDF
twMVC#42 Windows容器導入由0到1
PDF
twMVC#42 讓我們用一種方式來開發吧
PDF
Npm 套件管理 & 常用開發工具介紹
PDF
深入浅出NodeJS
PDF
twMVC#36.NetCore 3快速看一波
PDF
Gulp.js 自動化前端任務流程
PPTX
Multi thread 多執行緒程式設計(use c#)
PDF
twMVC#43 YARP
PDF
twMVC#36讓 Exceptionless 存管你的 Log
PPTX
快速入坑 Node.js - 0613 SITCON 雲林定期聚
PDF
twMVC#42 Azure IoT Hub for Smart Factory
PDF
學好 node.js 不可不知的事
PPTX
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
PDF
CP 值很高的 Gulp
PPTX
Angular 4 新手入門攻略完全制霸
PDF
Node.js 進攻桌面開發
PPTX
这年头,你只需要懂Node webkit
PPTX
SQL Server 資料庫版本控管
Node.js從無到有 基本課程
使用 Visual Studio Code 建構 JavaScript 應用程式
twMVC#42 Windows容器導入由0到1
twMVC#42 讓我們用一種方式來開發吧
Npm 套件管理 & 常用開發工具介紹
深入浅出NodeJS
twMVC#36.NetCore 3快速看一波
Gulp.js 自動化前端任務流程
Multi thread 多執行緒程式設計(use c#)
twMVC#43 YARP
twMVC#36讓 Exceptionless 存管你的 Log
快速入坑 Node.js - 0613 SITCON 雲林定期聚
twMVC#42 Azure IoT Hub for Smart Factory
學好 node.js 不可不知的事
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
CP 值很高的 Gulp
Angular 4 新手入門攻略完全制霸
Node.js 進攻桌面開發
这年头,你只需要懂Node webkit
SQL Server 資料庫版本控管
Ad

Similar to 课题二:Node.js那些事儿 (20)

PDF
Introduction to NodeJS
PPTX
Full stack-development with node js
PDF
Nodejs & NAE
PPTX
前端自動化工具
PPTX
深入淺出Node.JS
PDF
合久必分,分久必合
PDF
從軟體開發角度
談 Docker 的應用
PDF
2013年京JS参会分享
PDF
Node js实践
PPT
Node.js在淘宝的应用实践
PPTX
Comment System of 56.com
PDF
Chasingice
PDF
美团前端架构简介
PDF
D2_node在淘宝的应用实践_pdf版
PPTX
Node.js长连接开发实践
PPTX
Vic weekly learning_20160504
PPTX
Artifacts management with CI and CD
PPT
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
PDF
Berserk js
PDF
Meteor
Introduction to NodeJS
Full stack-development with node js
Nodejs & NAE
前端自動化工具
深入淺出Node.JS
合久必分,分久必合
從軟體開發角度
談 Docker 的應用
2013年京JS参会分享
Node js实践
Node.js在淘宝的应用实践
Comment System of 56.com
Chasingice
美团前端架构简介
D2_node在淘宝的应用实践_pdf版
Node.js长连接开发实践
Vic weekly learning_20160504
Artifacts management with CI and CD
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
Berserk js
Meteor
Ad

课题二:Node.js那些事儿

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