精华内容
下载资源
问答
  • nodejs特点

    2019-10-24 22:23:17
    特点: 单线程 非阻塞I/O 事件驱动 node不像java php等后端语言每个客户端访问时都要开启一个线程 node只有一个线程供所有用户访问,因此必须有非阻塞io,当其中一个客户端执行io操作就放弃cpu的使用权,(cpu的利用率100...

    特点:
    单线程
    非阻塞I/O
    事件驱动
    node不像java php等后端语言每个客户端访问时都要开启一个线程
    node只有一个线程供所有用户访问,因此必须有非阻塞io,当其中一个客户端执行io操作就放弃cpu的使用权,(cpu的利用率100%)
    当io结束,用事件通知线程,执行回调函数.此时必有事件环,就有一个排队调度机制.node中有超过半数的c++代码在搭建事件环
    nodejs的服务器靠自己搭建
    跟Apache有很大区别
    需要自己设置路由

    展开全文
  • NodeJS 特点

    2019-04-03 13:53:37
    非阻塞式的异步I/O Node.js中采用了非阻塞型I/O机制,因此在...Nodejs接收到的事件会放到事件队列中,而不是立即执行它,当NodeJS当前代码执行完后他会检查事件队列中是否有事件,如果有,他会取出来依次执行 ...
    • 非阻塞式的异步I/O
      • Node.js中采用了非阻塞型I/O机制,因此在执行了访问文件的代码之后,Nodejs不会阻塞在那里等待文件获取完成,而是把这件事交给底层操作系统,使用回调函数的方式来处理异步的IO,立即转而执行其它的代码,
    • 事件轮询
      • Nodejs接收到的事件会放到事件队列中,而不是立即执行它,当NodeJS当前代码执行完后他会检查事件队列中是否有事件,如果有,他会取出来依次执行
    • 单线程
      • Node.js不为每个客户连接创建一个新的线程,而仅仅使用一个线程。当有用户连接了,就触发一个内部事件,通过非阻塞I/O、事件驱动机制,让Node.js程序宏观上也是并行的
      • 优点:不会死锁、不用像多线程那样处处在意同步问题、没有线程切换带来的性能上的开销
      • 缺点:多核CPU需单独开子线程、错误会使得整个应用退出、大量计算会占用CPU从而无法调用异步I/O
    • 擅长I/O密集型
      • 主要体现在Node利用事件轮询的方式处理事件,而不是单开一个线程来为每一个请求服务
    • 不擅长CPU密集型业务
      • 由于Node单线程,如果长时间运行计算将导致CPU不能释放,使得后续I/O无法发起。(解决办法是分解大型运算为多个小任务,不阻塞I/O发起)

    global对象

    与在浏览器端不同,浏览器端将希望全局访问的对象挂到window上,而nodejs则将希望全局访问的对象挂到global对象上

    • CommonJS
    • Buffer、process、console
    • timer定时器相关

    setImmediate()、setTimeout(fn, 0) 与 process.nextTick()

    两个都是传入一个回调函数,当同步事件执行完之后马上执行。

    执行顺序依次是:

    • process.nextTick()
      • 将回调函数加入到 当前执行栈的尾部,任务队列之前
    • setTimeout(fn, 0)
      • 回调函数加入到 任务队列尾部。即使是0,也会又4ms的延时
    • setImmediate()
      • 将回调函数插入到任务队列的最末尾,也不会造成阻塞,但不妨碍其他的异步事件
    setImmediate(() => {
      console.log('setImmediate');
    })
    
    setTimeout(() => {
      console.log('setImmediate');
    }, 0)
    
    process.nextTick(() => {
      console.log('next');
    })
    
    展开全文
  • Nodejs特点以及js文件的引用

    千次阅读 2019-03-07 08:54:15
    1、Nodejs特点:单线程、Non-blocking I/O、Event Driven。 首先,Node不为每个用户开辟一个线程,所以非常极端的选择的单线程。单线程,要照顾所有的用户,那么就必须要有非阻塞I/O,否则一个人的I/O就把别人】自己...

    1、Nodejs特点:单线程、Non-blocking I/O、Event Driven。
    首先,Node不为每个用户开辟一个线程,所以非常极端的选择的单线程。单线程,要照顾所有的用户,那么就必须要有非阻塞I/O,否则一个人的I/O就把别人】自己阻塞了。一旦有了非阻塞I/O,一个人如果I/O去了,就会放弃CPU使用权,换成另外一个人使用CPU(或者执行此人后面的语句)。所以CPU的利用率100%。第一个I/O结束了,就要用事件来通知线程,执行回调函数。此时必须有事件环,就有一个排队调度机制。Node中超过半数的C++代码,在搭建事件环。
    2、Nodejs不同之处
    (1)没有自己的语法,使用V8引擎,所以就是js。V8引擎解析js效率非常高,并且V8中很多东西都是异步的。Node就是将V8的一些功能自己没有重写(用的别人的),移植到服务器上。
    (2)没有web容器,就是安装配置完成会后,没有根目录。
    3、前端:jQuery js相当于后端的:express 原生node
    一个js文件中定义变量、函数都只在内部有用。多个js文件相互之间调用需要exports暴露以及require引用。JS不包含作用域,前端写的时候是封装在。
    exports可以暴露很多东西变量、函数
    foo.js

    var msg = "hello";
    function showInfo(){
        console.log("hihi");
    }
    exports.msg = msg;
    exports.showInfo=showInfo;
    

    在使用时只需要require一次。增加了顶层变量foo,所有函数和变量都要从这个顶层变量。
    04.js

    var foo = require("./test/foo.js");
    console.log(foo.msg);
    foo.showInfo();
    

    Node中,js和js文件有exports和require网站在一起的,不是由html联系在一起的。
    4、在js文件中用module.export=构造函数的方式向外暴露一个
    People.js

    function People(name,sex,age){
        this.name = name;
        this.sex = sex;
        this.age = age;
    }
    People.prototype = {
        sayHello : function(){
            console.log(this.name + this.sex + this.age)
        }
    }
    //此时,People为构造函数,可以用new实例化了
    module.exports = People;
    

    05.js

    var People = require("./test/People.js")
    var xiaoming = new People("xiaoming", "nan", "12");
    console.log(xiaoming);
    xiaoming.sayHello();
    

    结果图:

    H:\nodedemo\test3>node 05.js
    { name: 'xiaoming', sex: 'nan', age: '12' }
    xiaomingnan12
    

    js文件和js文件之间有两种合作模式。
    (1)某一个js文件提供了函数供别人引用,只需要暴露函数即可。exports.msg=msg;
    (2)某一个js文件描述了一个类,供别人引用。module.exports=People;
    5、如果require没有写./ 则默认是从node_modules导入的。每个模块文件夹中,推荐在根目录中写一个package.json文件,名字不可改。node将自动读取里面的配置。有一个main,是入口文件。

    {
        "name":"ceshi",
        "version":"1.0.1",
        "main":"app.js"
    }
    
    展开全文
  • nodejs特点理解

    2017-09-14 20:29:42
    此文是个人对nodejs初步认识和理解不喜勿喷!...nodejs三大特点: 单线程 非阻塞I/O 事件驱动. 1). 单线程: 是为了减少内存的开销 (操作系统的内存的创建/销毁).  但是, 如果请求有 I/O 操作, 单线程会
    此文是个人对nodejs初步认识和理解不喜勿喷!!大神大牛看到请指点迷津

    本人初步认识nodejs : 它不是语言, 而是一种基于javasript V8引擎所支持的且能运行在服务器端的开发平台.

    nodejs三大特点:

    单线程  非阻塞I/O  事件驱动.

    1). 单线程: 是为了减少内存的开销 (操作系统的内存的创建/销毁). 

    但是, 如果请求有 I/O 操作, 单线程会被阻塞.这时需用非阻塞 I/O


    2). 非阻塞 I/O : 程序不会等 I/O 操作语句之行结束才继续后面的操作, 而是会直接执行后续的操作语句.

         但是, 非阻塞 I/O 无法解决多用户的请求,例如: 一个数据库操作,一个文件读取请求,这时需用事件驱动.


    3). 事件驱动(也称事件环) : 不管是新用户的请求,还是老用户的操作,都将以事件的方式加入到事件环当中.等待调度.

    展开全文
  • NodeJS特点与适用场景

    2019-11-29 11:12:19
    NodeJS特点 它是一个Javascript运行环境 依赖于Chrome V8引擎进行代码解释 事件驱动 非阻塞I/O 轻量、可伸缩,适于实时数据交互应用 单进程,单线程 二.nodejs解决的问题 1.并发连接 异步、事件驱动模型 ...
  • 面试题:NodeJS特点

    千次阅读 2019-07-11 11:12:58
    面试官: 了解Node吗,有什么特点? 回答官网第一句: 面试官: 然后呢? 1. 它的用途决定了它的特性-单线程 1.作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。这决定了它只能是单线程,否则...
  • NodeJS特点概述

    2015-07-22 21:11:19
    NodeJS特点概述,对于学习nodejs有很大的帮助。
  • NodeJS特点

    2019-10-09 20:50:03
    一. NodeJS特点 我们先来看看NodeJS官网上的介绍: Node.js is a platform built on Chrome’s JavaScript runtime for easi...
  • nodejs特点

    2021-01-18 19:26:30
    nodejs特点 nodejs特点:**单线程;非阻塞I/O;事件驱动 ** 同步阻塞 与异步非阻塞; 同步: a b c d 固定顺序去处理用户请求; 阻塞 + 多线程; 异步: 服务器端对多个请求进行判断,由服务器端决定优先处理哪个...
  • Nodejs

    2019-12-20 21:22:56
    跑在服务器上的JS 起源:c++程序员使用js做服务器开发 Nodejs特点 1.事件驱动 2.异步编程 原因:js闭包,匿名函数 缺点: 单线程(处理不好,服务器容易崩) 容错性差(回调,单线程) 网页如何生成 ...
  • nodejs 主要特点

    2019-04-03 22:15:08
    单线程,单线程的好处,减少了内存开销,操作系统的内存换页。 非阻塞I/O,不会傻等I/O语句结束,而会执行后面的语句。 事件机制,事件环,不管是新用户的请求,还是老用户的I/O完成,都将以事件方式加入事件环,...
  • Nodejs入门思想

    2020-04-01 14:57:40
    一、Nodejs特点 二、Nodejs模块化 三、Nodejs异步回调 四、Nodejs爬虫 五、Nodejs中间件 一、Nodejs特点 Node是单线程_不需要为每一个客户端连接创建新线程,当有用户连接了,就触发一个内部时间,通过非阻塞IO,让...
  • 1-2 NodeJS特点

    2020-03-23 15:33:08
    NodeJS简介 NodeJS之所以被我们认为是后台编程语言,是因为以下几点: (1)可以将node安装到服务器上 (2)可以将js代码放到服务器上,通过node来执行它。 换一种说法。其实就是node赋予了js修改服务器端代码的一种...
  • nodejs

    2020-05-24 23:07:06
    1.什么是node ●Nodejs 是一个基于Chrome V8引擎的JavaScript运行环境 ... 相信很多初学者刚开始都nodejs都很陌生,其实nodejs一个javascript的运行环境,并且它是基于谷歌V8引擎的,node的特点是非阻塞式的I/O模型 2.
  • nodeJs

    2019-06-23 12:11:40
    nodejs介绍 nodejs是一个开发平台,就像Java开发平台、 .Net开发平台、PHP开发平台、Apple开发平台一样 ( 开发平台:有对应的编程语言、有语言运行时、有能实现特定功能的)API(SDK:Software Development Kit) ...
  • 特点: 简单的说 Node.js 就是运行在服务端的 JavaScript。 Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。 适用场景 Node异步I/O的特点...
  • 一、NodeJS的优缺点 node的主要特点: 它是一个Javascript运行环境 依赖于Chrome V8引擎进行代码解释 异步事件驱动 非阻塞I/O 轻量、可伸缩,适于实时数据交互应用 单进程,单线程(这里指主线程) 性能出众 优点...
  • nodeJS

    2016-12-27 14:25:37
    1.什么是nodeJs ...特点: 单线程 异步执行,支持高并发, 通过异步回调函数拿到所有请求,如抢票。 异步并发量比同步高 上手简单 涉足范围广 2.es6方式写nodejs 搭建nodejs es6环境安装:安装cnpm insta

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,623
精华内容 6,649
关键字:

nodejs特点