node项目分析-FE分享

一、概念知识

1. 理解Node.js

  1. 简单的说Node.js 就是运行在服务端的 JavaScript
  2. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台
  3. Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好
  4. 结构组成:

 nodejs struc

2. 执行机制:TODO:参考从原理上理解NodeJS的适用场景;有时间再去看看进程和线程

NodeJS是异步单线程的

在Node.js中,绝大部分API都是异步的,有一个很形象的故事描述了JAVA和Node.js的区别,JAVA是一个餐厅100个服务员对应100客户,Node.js是一个服务员玩命干,也对应100个客户,上菜的速度很大一部分取决于厨师的做菜速度 

nodejs run

  • 关于nodeJS单线程的理解

      Node.js的单线程并不是真正的单线程,只是开启了单个线程进行业务处理(cpu的运算),同时开启了其他线程专门处理I/O。当一个指令到达主线程,主线程发现有I/O之后,直接把这个事件传给I/O线程,不会等待I/O结束后,再去处理下面的业务,而是拿到一个状态后立即往下走,这就是“单线程”、“异步I/O”。

  • nodeJS的事件主要是网络请求、文件I/O等
  • 什么是I/O操作:

    IO在计算机中指Input/Output,也就是输入和输出。由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘、网络等,就需要IO接口。(廖雪峰)

  • 语言对比-处理请求
    • Java/PHP如和处理:每个连接都会生成一个新线程,每个新线程可能需要2MB的配套内存(eg:在一个拥有8GBRAM的系统上,理论上最大的并发连接数量是4,000个用户);因此用户量增长,只有扩容。【所以在传统的后台开发中,整个Web应用程序架构(包括流量、处理器速度和内存速度)中的瓶颈是:服务器能够处理的并发连接的最大数量。这个不同的架构承载的并发数量是不一致的。】
    • Node:更改连接到服务器的方式。Node 声称它不允许使用锁,它不会直接阻塞 I/O 调用。Node在每个连接发射一个在 Node 引擎的进程中运行的事件,而不是为每个连接生成一个新的 OS 线程(并为其分配一些配套内存)。
      • 但是,非IO、网络通信等耗时比较长的操作,nodejs就主线程自己处理,自己本身又是
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Node.js是一个基于Chrome V8引擎的JavaScript运行时环境,用于在服务器端运行JavaScript代码。\[1\]Node.js的版本号可以通过运行`node --version`命令来查看。而node-sass是一个将Sass编译成CSS的库,它是Node.js的一个模块。\[1\]node-sass的版本号可以通过运行`npm list node-sass`命令来查看。\[2\] 在安装node-sass时,可以手动下载node-sass文件并指定路径安装,或者使用npm命令指定要安装的node-sass版本。\[2\]如果项目使用的是Node.js 4.X.X版本,那么需要安装对应的node-sass版本。如果当前安装的node-sass版本与项目所需版本不兼容,可以重新下载与当前Node.js版本匹配的node-sass版本。\[3\] 总结起来,Node.js是一个JavaScript运行时环境,而node-sass是一个将Sass编译成CSS的库。在安装node-sass时,需要根据项目所需的Node.js版本选择对应的node-sass版本。 #### 引用[.reference_title] - *1* *2* [nodenode-sass版本问题](https://blog.csdn.net/weixin_42713970/article/details/86507781)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [nodenode-sass版本不兼容问题](https://blog.csdn.net/weixin_42119356/article/details/124993902)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值