• 深入浅出node读书笔记(一)


      老早就想读这本书了,可是因为这样那样的原因,总归是耽搁了,前几天一直在纠结毕业设计用什么语言来实现后端逻辑代码的问题,通过一周时间的痛苦挣扎,选择了node,于是就又开始学习node了,希望写随笔这种形式能够逼着我把node好好研究一遍。

      首篇文章主要讲述该书的第一个章节,因为是读书笔记,内容可能不会很全面,大概只会写下我认为重要的东西,一些无关紧要的内容可能略过。本篇文章主要从两个方面来介绍node,分别是:node的特点以及node的使用场景。

      (1)node的特点:

        a)异步I/O:异步I/O对前端来说应该相对熟悉一些,首先看下面一个ajax请求的例子: 

    $.ajax({
       url:'www.baidu.com',
       type:'post',
       data:'data',
       success:function(){
           console.log('请求完成');
       }  
    })
    console.log('开始请求')

               执行完的结果是:开始请求

                                      请求完成

               当请求发出后,js单线程即不等待请求结果,继续执行下边的代码,当请求完成后,success函数被触发,执行里面的代码,即异步

               b)回调函数:见上一条ajax实例,sucess即为该次请求成功之后的回调函数,请求成功之后调用

               c)单线程:总所周知,js是单线程的,在浏览器端如果线程用来长时间执行js代码,就会阻碍ui的渲染过程,h5定义一个新的api web works来解决这个问题。与之类似,在服务器                              端,如果js的单线程用来执行cpu密集型业务,也会阻碍回调函数的执行以及新事件的绑定,于是node作者采用了child_process子进程来解决这个问题

               d)跨平台:在windows和*nix系统上都能运行node,因为node与操作系统之间构建了一个中间层libuv来顺利兼容不同的操作系统

           (2)node的应用场景:

                a)I/O密集型:基于事件驱动的回调函数无阻塞模式,性能提高

                b)分布式:此处没有研究,暂时应该用不到,忽略之!

  • 相关阅读:
    题解【bzoj3529 [SDOI2014]数表】
    题解【bzoj2301 [HAOI2011]Problem b】
    题解【bzoj2440 [中山市选2011]完全平方数】
    题解【bzoj3240 [NOI2013]矩阵游戏】
    题解【CF277E Binary Tree on Plane】
    题解【luogu2045 方格取数游戏加强版】
    题解【bzoj4650 [NOI2016]优秀的拆分】
    NOIp2018 游记
    Android提供的layout文件存放位置
    Android控件第2类——ImageView
  • 原文地址:https://www.cnblogs.com/jakii/p/5116460.html
Copyright © 2020-2023  润新知