zoukankan      html  css  js  c++  java
  • 深入浅出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)分布式:此处没有研究,暂时应该用不到,忽略之!

  • 相关阅读:
    在winform下实现左右布局多窗口界面的方法(一)
    C# 使用API检查域用户名和密码是否正确
    C#检查网络是否可以连接互联网
    总结:实体类和(XML或二进制)之间相互转(序列化和反序列化)
    XML和实体类之间相互转换(序列化和反序列化)
    C# XML反序列化与序列化举例:XmlSerializer
    XML文件与实体类的互相转换
    Message类的属性Msg所关联的消息ID
    C# Message 消息处理
    在.net中读写config文件的各种方法(自定义config节点)
  • 原文地址:https://www.cnblogs.com/jakii/p/5116460.html
Copyright © 2011-2022 走看看