• NodeJS1-2 Node JS的优点


    NodeJS并不适合所有server端的场景,它的使用场景是及其有限的,web是nodeJS最适合的场景

    前端偏爱node的原因其内核就是JavaScript

    • 前端职责范围变大,统一开发体验
    • 在处理了高并发,I/O密集场景性能优势明显

    CPU密集 VS I/O密集

    • CPU密集:压缩,解压,加密,解密(程序大部分时间是用来做计算,判断等CPU动作)
    • I/O密集:文件操作,网络操作,数据库(程序大部分时间是做存储设备,网络设施)

    web常见场景(web典型的I/O密集)

    • 静态资源的读取(各种JavaScript,css,静态的HTML)
    • 数据库操作
    • 渲染页面(读取模板文件,根据数据生成HTML)

    高并发对应解决方法

    • 增加机器数
    • 增加每台机器的CPU数_多核(针对运算比较密集的)

    进程是什么?

    • 进程:是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位(点击音乐播放器的就会进入进程,一边上网一边听音乐,其实就好像动画帧一样,交错插着来运行进程,所以让你觉得是同时进行的)
    • 多进程:启动多个进程,多个进程可以一块执行多个任务

    线程是什么?

    • 线程:进程内一个相对独立的,可调度的执行单元,与同属一个进程的线程共享进程的资源
    • 多线程:启动一个进程,在一个进程内启动多个线程,这样,多个线程也可以一块执行多个任务

    NodeJS 的单线程

    • 单线程只是针对主进程,I/O操作系统底层多线程调度
    • 单线程并不是单进程

    大概理解web的相应模型

    Node JS性能好(前提是要在web的场景下,并且I/O密集的)

     常用场景

    • Web Server
    • 本地代码的构建
    • 实用工具开发
  • 相关阅读:
    C++注释
    python绘制动态图
    解决“<form>提交,CSRF验证失败。请求中止”
    Django相关的MTV
    AVplayer搭建ftp共享PC端
    02: 均值(1.5编程基础之循环控制)
    1.5编程基础之循环控制_ 01:求平均年龄
    for循环进阶
    找第k大的数
    c++中,bool与int 的区别
  • 原文地址:https://www.cnblogs.com/chorkiu/p/11413077.html
Copyright © 2020-2023  润新知