SlideShare ist ein Scribd-Unternehmen logo
1 von 12
..NODEJSNO...NODEJSNOD.. NODEJSN ....NODE . NO.NODE.NODEJS NODE. NODEJSN....
.....NODE NODE .NODE .NO NOD    NO    .NODE   NO   .NO .NODE   NO NOD ..NO....
 ....NODE.NODE .NODE. .N NODE   .N.   NODEJ  NODEJ..NO .NODE   N  NODE.. N....
 ....NODE NODE..NODEJS . NODE ....    N.NODE NODEJSNO .NODE    N  NODEJSN ....
 ....NODEJSN. ..NODE.N . NODE.NODEJ N..NODE   .NODEJSN .NODE   N  .NODEJSN....
 ....NODE.......NODE . N NODE NOD. NODEJSNO NO ..NODE NODE     N  N. NODE....
.....NODE... ...NODE NO .NOD NOD. NO .NODE NOD     NOD NODE    N  NO...NOD....
  ..NODEJS.....NODEJSNOD . NO.NOD NODE NODEJSNODEJSN     NODEJS.  NOD.NO......




                    NODE.JS feat. PEGASUS

                 基于NODE的神马级HTTP服务器的设计与实现
JavaScript
网景公司在1995年发明了
JavaScript                   微软公司在1996年实现了
                             JScript
    Ecma国际标准化组织在1997年
    制定了ECMA-262标准
                            1999年,ECMA-262 第三版

   ECMA-262第四版
                                       通用语言
                 2009年,ECMA-262第五版

 对象与方法
                                     运算闭包
      数据结构与函数

                   什么都做不了的JavaScript
JavaScript in Browser

        CSS
                                      程序语言与标准库
              Document Object Model
HTML


                      W3C与HTML5          W3C与JavaScript
  ActiveX


        XMLHttpRequest
                                      应用领域的扩展

       浏览器插件

                              程序语言与三方库
No-Blocking

      UI线程与工作线程

                  什么叫做阻塞

 永不阻塞的单线程


                       alert()会造成线程阻塞
      基于事件的
      消息通知机制与异步运行机制



    多线程、同步与互斥
                      Web Workers
CommonJS
 服务端JavaScript
                                                      运行环境
                    Windows Script Host

    Active Service Pages
                                               标准库

                      require(‘CommonJS’);

  模块的定义与加载
                                                   Binary模块
                              IO模块
      FileSystem模块

                 HTTP模块
                                             包管理
Node.JS
CommonJS的一个实现
                                            Akshell
                                      GLUEscript RingoJS
                                        CouchDB Dasquillette
         Node.JS                                 Ejscript
                        V8            Flusspferd        JSBuild
                                                  FlyScript
          http-parser                     GPSEE
 libev                                         JSLocalnet
                    c-ares
          libeio                              ......


                        事件驱动                POSIX平台

     非阻塞                                                  C++模块
                                          高性能
                               回调函数
                   单线程                                 简洁
No-Blocking in Node.JS

       磁盘读写延迟
                               并行处理

                    非计算耗时
  网络请求延迟

                                 单处理器
             回调函数


    异步操作函数               单磁盘


                                 批处理
               同步操作函数
Single-Threaded HTTPD

    多线程HTTPD

 线程开销

        线程间同步与互斥


               海量HTTP请求处理策略


                          单线程HTTPD


                                 多处理器
                        负载均衡
F2E’s New Toy

  没有一门语言是万能的
                          掌握一门后台语言

      语言影响人的思考方式

  选择合适的工具                    了解Web服务器
  做合适的事情
                前端最爱JS


                         模拟后台代码
      编写工具脚本


                     代码实验室
Pegasus

     巨大的图片目录
                           轻量级

  请求重定向                            好玩的


               前端专用HTTPD

                             文件合并
    易于开发和扩展

                  文件修改即时生效
 易于部署                                独角兽

        跨平台                代码格式化
Node.JS feat. Pegasus
                             静态文件请求
                             处理模块
    JSBeautifier模块
                                      独角兽请求
                           HTTP响应模块
                                      处理模块
  托盘程序


                     主循环




     配置模块
                                HTTP代理模块
Q&A




      ?
          ...and Thank You.

Weitere ähnliche Inhalte

Was ist angesagt?

NODEjs Lesson1
NODEjs Lesson1NODEjs Lesson1
NODEjs Lesson13dmodeldiy
 
安卓中的设计模式举例 by hjm1fb
安卓中的设计模式举例 by hjm1fb安卓中的设计模式举例 by hjm1fb
安卓中的设计模式举例 by hjm1fbAlbert Hong
 
Javascript primer plus
Javascript primer plusJavascript primer plus
Javascript primer plusDongxu Yao
 
PHP and Zend Internal I - 体系结构及生命周期
PHP and Zend Internal I - 体系结构及生命周期PHP and Zend Internal I - 体系结构及生命周期
PHP and Zend Internal I - 体系结构及生命周期ericzhangcn
 
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生dennis zhuang
 
前端性能测试
前端性能测试前端性能测试
前端性能测试tbmallf2e
 
Js高级技巧
Js高级技巧Js高级技巧
Js高级技巧fool2fish
 
电子书项目总结 前端
电子书项目总结 前端电子书项目总结 前端
电子书项目总结 前端jay li
 
深入浅出NodeJS
深入浅出NodeJS深入浅出NodeJS
深入浅出NodeJSsunzhenghua
 
闪存数据库日志技术
闪存数据库日志技术闪存数据库日志技术
闪存数据库日志技术july19850903
 
Node develop expirements
Node develop expirementsNode develop expirements
Node develop expirementsaleafs
 
高性能的Java代码编写及常见问题排查
高性能的Java代码编写及常见问题排查高性能的Java代码编写及常见问题排查
高性能的Java代码编写及常见问题排查bluedavy lin
 
鸟枪换炮——Objectjs的oop与loader
鸟枪换炮——Objectjs的oop与loader鸟枪换炮——Objectjs的oop与loader
鸟枪换炮——Objectjs的oop与loaderJeaf Wang
 
课题二:Node.js那些事儿
课题二:Node.js那些事儿课题二:Node.js那些事儿
课题二:Node.js那些事儿Liu Allen
 
Nodejs部门分享
Nodejs部门分享Nodejs部门分享
Nodejs部门分享zffl
 
Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)ziggear
 
不一樣的 Web Server coServ Part II
不一樣的 Web Server coServ Part II不一樣的 Web Server coServ Part II
不一樣的 Web Server coServ Part IIBen Lue
 
July.2011.w3ctech
July.2011.w3ctechJuly.2011.w3ctech
July.2011.w3ctechKai Cui
 

Was ist angesagt? (19)

NODEjs Lesson1
NODEjs Lesson1NODEjs Lesson1
NODEjs Lesson1
 
安卓中的设计模式举例 by hjm1fb
安卓中的设计模式举例 by hjm1fb安卓中的设计模式举例 by hjm1fb
安卓中的设计模式举例 by hjm1fb
 
Javascript primer plus
Javascript primer plusJavascript primer plus
Javascript primer plus
 
PHP and Zend Internal I - 体系结构及生命周期
PHP and Zend Internal I - 体系结构及生命周期PHP and Zend Internal I - 体系结构及生命周期
PHP and Zend Internal I - 体系结构及生命周期
 
一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生一个 Mongodb command 的前世今生
一个 Mongodb command 的前世今生
 
前端性能测试
前端性能测试前端性能测试
前端性能测试
 
Js高级技巧
Js高级技巧Js高级技巧
Js高级技巧
 
Mongo db 特性
Mongo db 特性Mongo db 特性
Mongo db 特性
 
电子书项目总结 前端
电子书项目总结 前端电子书项目总结 前端
电子书项目总结 前端
 
深入浅出NodeJS
深入浅出NodeJS深入浅出NodeJS
深入浅出NodeJS
 
闪存数据库日志技术
闪存数据库日志技术闪存数据库日志技术
闪存数据库日志技术
 
Node develop expirements
Node develop expirementsNode develop expirements
Node develop expirements
 
高性能的Java代码编写及常见问题排查
高性能的Java代码编写及常见问题排查高性能的Java代码编写及常见问题排查
高性能的Java代码编写及常见问题排查
 
鸟枪换炮——Objectjs的oop与loader
鸟枪换炮——Objectjs的oop与loader鸟枪换炮——Objectjs的oop与loader
鸟枪换炮——Objectjs的oop与loader
 
课题二:Node.js那些事儿
课题二:Node.js那些事儿课题二:Node.js那些事儿
课题二:Node.js那些事儿
 
Nodejs部门分享
Nodejs部门分享Nodejs部门分享
Nodejs部门分享
 
Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)Web设计 3 java_script初探(程序员与设计师的双重眼光)
Web设计 3 java_script初探(程序员与设计师的双重眼光)
 
不一樣的 Web Server coServ Part II
不一樣的 Web Server coServ Part II不一樣的 Web Server coServ Part II
不一樣的 Web Server coServ Part II
 
July.2011.w3ctech
July.2011.w3ctechJuly.2011.w3ctech
July.2011.w3ctech
 

Ähnlich wie Node js feat pegasus

Node.js 進攻桌面開發
Node.js 進攻桌面開發Node.js 進攻桌面開發
Node.js 進攻桌面開發Fred Chien
 
建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)Joseph Chiang
 
Effective.enterprise.java中文版
Effective.enterprise.java中文版Effective.enterprise.java中文版
Effective.enterprise.java中文版Peter Fan
 
事件驱动编程
事件驱动编程事件驱动编程
事件驱动编程banq jdon
 
【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 yangdj
 
赶集团购开发总结4
赶集团购开发总结4赶集团购开发总结4
赶集团购开发总结4yangdj
 
性能优化
性能优化性能优化
性能优化Lu Wei
 
猴子也能懂的Node.js
猴子也能懂的Node.js猴子也能懂的Node.js
猴子也能懂的Node.jsHopenglishRD
 
OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发leneli
 
000 北京圣思园教育科技有限公司第一期面授培训大纲
000 北京圣思园教育科技有限公司第一期面授培训大纲000 北京圣思园教育科技有限公司第一期面授培训大纲
000 北京圣思园教育科技有限公司第一期面授培训大纲ArBing Xie
 
Introduction to NodeJS
Introduction to NodeJSIntroduction to NodeJS
Introduction to NodeJSTechParty@UIC
 
构建基于Lamp的网站架构
构建基于Lamp的网站架构构建基于Lamp的网站架构
构建基于Lamp的网站架构Cosey Lee
 
全端物聯網探索之旅 - 重點整理版
全端物聯網探索之旅 - 重點整理版全端物聯網探索之旅 - 重點整理版
全端物聯網探索之旅 - 重點整理版Simen Li
 
Yog Framework
Yog FrameworkYog Framework
Yog Frameworkfansekey
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型Jackson Tian
 
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure National Cheng Kung University
 
使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统Frank Xu
 
百度分布式数据库平台
百度分布式数据库平台百度分布式数据库平台
百度分布式数据库平台Wyatt Fang
 

Ähnlich wie Node js feat pegasus (20)

Node.js 進攻桌面開發
Node.js 進攻桌面開發Node.js 進攻桌面開發
Node.js 進攻桌面開發
 
建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)
 
Effective.enterprise.java中文版
Effective.enterprise.java中文版Effective.enterprise.java中文版
Effective.enterprise.java中文版
 
事件驱动编程
事件驱动编程事件驱动编程
事件驱动编程
 
【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结
 
赶集团购开发总结4
赶集团购开发总结4赶集团购开发总结4
赶集团购开发总结4
 
性能优化
性能优化性能优化
性能优化
 
猴子也能懂的Node.js
猴子也能懂的Node.js猴子也能懂的Node.js
猴子也能懂的Node.js
 
OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发
 
000 北京圣思园教育科技有限公司第一期面授培训大纲
000 北京圣思园教育科技有限公司第一期面授培训大纲000 北京圣思园教育科技有限公司第一期面授培训大纲
000 北京圣思园教育科技有限公司第一期面授培训大纲
 
Introduction to NodeJS
Introduction to NodeJSIntroduction to NodeJS
Introduction to NodeJS
 
构建基于Lamp的网站架构
构建基于Lamp的网站架构构建基于Lamp的网站架构
构建基于Lamp的网站架构
 
Berserk js
Berserk jsBerserk js
Berserk js
 
全端物聯網探索之旅 - 重點整理版
全端物聯網探索之旅 - 重點整理版全端物聯網探索之旅 - 重點整理版
全端物聯網探索之旅 - 重點整理版
 
Micro service
Micro serviceMicro service
Micro service
 
Yog Framework
Yog FrameworkYog Framework
Yog Framework
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
 
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
 
使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统
 
百度分布式数据库平台
百度分布式数据库平台百度分布式数据库平台
百度分布式数据库平台
 

Node js feat pegasus

  • 1. ..NODEJSNO...NODEJSNOD.. NODEJSN ....NODE . NO.NODE.NODEJS NODE. NODEJSN.... .....NODE NODE .NODE .NO NOD NO .NODE NO .NO .NODE NO NOD ..NO.... ....NODE.NODE .NODE. .N NODE .N. NODEJ NODEJ..NO .NODE N NODE.. N.... ....NODE NODE..NODEJS . NODE .... N.NODE NODEJSNO .NODE N NODEJSN .... ....NODEJSN. ..NODE.N . NODE.NODEJ N..NODE .NODEJSN .NODE N .NODEJSN.... ....NODE.......NODE . N NODE NOD. NODEJSNO NO ..NODE NODE N N. NODE.... .....NODE... ...NODE NO .NOD NOD. NO .NODE NOD NOD NODE N NO...NOD.... ..NODEJS.....NODEJSNOD . NO.NOD NODE NODEJSNODEJSN NODEJS. NOD.NO...... NODE.JS feat. PEGASUS 基于NODE的神马级HTTP服务器的设计与实现
  • 2. JavaScript 网景公司在1995年发明了 JavaScript 微软公司在1996年实现了 JScript Ecma国际标准化组织在1997年 制定了ECMA-262标准 1999年,ECMA-262 第三版 ECMA-262第四版 通用语言 2009年,ECMA-262第五版 对象与方法 运算闭包 数据结构与函数 什么都做不了的JavaScript
  • 3. JavaScript in Browser CSS 程序语言与标准库 Document Object Model HTML W3C与HTML5 W3C与JavaScript ActiveX XMLHttpRequest 应用领域的扩展 浏览器插件 程序语言与三方库
  • 4. No-Blocking UI线程与工作线程 什么叫做阻塞 永不阻塞的单线程 alert()会造成线程阻塞 基于事件的 消息通知机制与异步运行机制 多线程、同步与互斥 Web Workers
  • 5. CommonJS 服务端JavaScript 运行环境 Windows Script Host Active Service Pages 标准库 require(‘CommonJS’); 模块的定义与加载 Binary模块 IO模块 FileSystem模块 HTTP模块 包管理
  • 6. Node.JS CommonJS的一个实现 Akshell GLUEscript RingoJS CouchDB Dasquillette Node.JS Ejscript V8 Flusspferd JSBuild FlyScript http-parser GPSEE libev JSLocalnet c-ares libeio ...... 事件驱动 POSIX平台 非阻塞 C++模块 高性能 回调函数 单线程 简洁
  • 7. No-Blocking in Node.JS 磁盘读写延迟 并行处理 非计算耗时 网络请求延迟 单处理器 回调函数 异步操作函数 单磁盘 批处理 同步操作函数
  • 8. Single-Threaded HTTPD 多线程HTTPD 线程开销 线程间同步与互斥 海量HTTP请求处理策略 单线程HTTPD 多处理器 负载均衡
  • 9. F2E’s New Toy 没有一门语言是万能的 掌握一门后台语言 语言影响人的思考方式 选择合适的工具 了解Web服务器 做合适的事情 前端最爱JS 模拟后台代码 编写工具脚本 代码实验室
  • 10. Pegasus 巨大的图片目录 轻量级 请求重定向 好玩的 前端专用HTTPD 文件合并 易于开发和扩展 文件修改即时生效 易于部署 独角兽 跨平台 代码格式化
  • 11. Node.JS feat. Pegasus 静态文件请求 处理模块 JSBeautifier模块 独角兽请求 HTTP响应模块 处理模块 托盘程序 主循环 配置模块 HTTP代理模块
  • 12. Q&A ? ...and Thank You.