NodeJS特点

NodeJS特点

  1. web服务器的主要特点是:事件驱动,非阻塞I/O,单线程,跨平台
  2. 自身非常简单,通过通信协议来组织许多node,通过拓展来达成构建大型网络应用的目的。每一个node进程都构成这个网络的一个节点
  3. 适用于io密集型

node和浏览器的对比

  1. 浏览器除了v8引擎意外,还有webkit布局引擎,浏览器提供了越来越多的功能暴露给了javascript和html标签。
  2. 基于事件驱动的。浏览器通过事件驱动来服务界面上的交互。node通过实践驱动来服务I/O![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/在这里插入图片描述

特点

  1. 异步io
    • 读取文件
    var fs = require('fs')
    fs.readFile('/path',function (err, file) {
        console.log("文件读取完成")
    })
    console.log("发起文件读取")
    
    • 在node中,绝大多数的请求都是以异步的方式调用。同步io在这里插入图片描述
      来说,耗时是两个任务的耗时之和。
  2. 事件和回调函数
    var http = require('http')
    var querystring = require('querystring')
    // request事件
    http.createServer(function(req, err) {
    var postData = ''
    res.setEncoding('utf8')
    //监听data事件
    req.on('data',function(trunk) {
    postData += trunk
    }).listen(8080)
    })
    
  3. 单线程
    • 不用在意状态的同步。
    • 弱点
      • 无法利用多喝GPU
      • 健壮性弱,try-catch
      • 大量计算导致CPU占用
  4. 跨平台
  5. web2.0
  • 在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值