zoukankan      html  css  js  c++  java
  • Node介绍与安装

    • Node.js

    不是一门语言,不是库、框架,是一个JavaScript运行时环境

    简单来说就是Node.js可以解析和执行JavaScript代码。以前只有浏览器可以解析执行js代码,现在js可以脱离浏览器来运行,归功于Node.js

    • Node.js能做什么

    Node.js最擅长处理高并发,在Java、PHP或.net等服务端语言中,会为每一个客户端链接创建一个新的线程。

    而每个线程需要耗费大约2MB内存,

    也就是说,理论上,一个8GB内存的服务器可以同时连接的最大用户数为4000个左右。

    Node.js不为每个客户连接创建新线程,而仅仅使用一个线程。

    当有用户连接了就触发一个内部事件,通过非阻塞I/O、事件驱动机制,让Node.js程序宏观上也是并行的。

    使用Node.js,一个8GB内存的服务器,可以同时处理超过4万用户连接。 

    • 安装

    参见菜鸟教程

    mac:推荐通过NVM安装指定版本的node

    $ brew install nvm
    
    $ cd ~
    $ vim .bash_profile
    
    // 添加以下命令
    export NVM_DIR=~/.nvm
    source $(brew --prefix nvm)/nvm.sh
    
    $ source .bash_profile
    
    // 使用nvm安装node
    
    $ nvm ls-remote 查看 所有的node可用版本
    
    $ nvm install xxx 下载你想要的版本
    
    $ nvm use xxx 使用指定版本的node 
    
    $ nvm alias default xxx 每次启动终端都使用该版本的node 
    
    // 完成
    $ node -v
    $ npm -v 
    •  浏览器中的JavaScript

    1)EcmaScript:基础语法、if、var、function、Object、Array

    2)BOM

    3)DOM

    • Node.js中的Javascript

    1)没有BOM、DOM

    2)有EcmaScript (如ES 6)

    3)在Node这个js执行环境中为js提供来一些服务器级别的操作API

    如:文件读写、网络服务的构建、网络通信、http服务器等处理 

    • 构建在Chrome的V8引擎之上

    1)代码只是具有特定格式的字符串而已,引擎可以帮你去解析和执行

    2)Google Chrome的V8引擎是目前公认的解析执行js代码最快的js引擎

    3)Node.js的作者把Google Chrome中的V8引擎移植来出来,开发了一个独立的js运行时环境

    • Node.js特性

    1)事件驱动 2)非阻塞IO模型(异步),使其轻量和高效

    • npm (基于node开发的)

    npm是世界上最大的开源库生态系统,绝大多数js相关的包都放在npm上,方便开发人员下载使用

    国内可使用cnpm

    • B/S 编程模型 

    Browser - Server

    任何服务端技术这种B/S编程模型都是一样,和语言无关

    Node只是作为我们学习B/S编程模型的一个工具

     
  • 相关阅读:
    eclipse下c/cpp " undefined reference to " or "launch failed binary not found"问题
    blockdev 设置文件预读大小
    宝宝语录
    CentOS修改主机名(hostname)
    subprocess报No such file or directory
    用ldap方式访问AD域的的错误解释
    英特尔的VTd技术是什么?
    This virtual machine requires the VMware keyboard support driver which is not installed
    Linux内核的文件预读详细详解
    UNP总结 Chapter 26~29 线程、IP选项、原始套接字、数据链路访问
  • 原文地址:https://www.cnblogs.com/stringarray/p/12602221.html
Copyright © 2011-2022 走看看