nodeJs概论

认识Node

  node是javascript的服务器运行环境

  node采用谷歌V8引擎,作为JavaScript语言解释器,速度非常快。性能非常好。

发展史

  2008年Ajax逐渐诞生

  2009年Ryan Dahl创建一个容易扩展,适用于现代web应用通信的服务器平台,服务器和浏览器实时通讯,信息推送,优秀的模块化

  2013年发布稳定版v.0.10.13

  随后Node的发布计划主要集中在性能上,长期使用的是v4.4.4

Node与JavaScript

为什么要学习Node

  很火,风靡全球

  Linkedln paypal pomelo 网易 知乎 阿里 

  Express PM2 CoffeeScript socket.io(即时通信框架)

  应用领域广

  RESTFUL API

  实时通信

  高并发  单进程承载大量请求

  I/O阻塞  javascript的事件异步去抵抗io阻塞

 Node的特点

  环境部署简单 npm自动化工具,执行安装扩展

  注重约定  遵循约定 

  基于事件

  异步编程

  高效与性能

  单线程与多进程  google v8是单进程的

  子进程

  多进程 PM2第三方工具实现

node缺点 

  大量采用匿名函数,使得抛出的异常不易阅读,给匿名函数命名

  try/catch限制于同步代码,使得异步捕获较为复杂

  单线程的可靠问题

  不适合CPU密集型场景  

  回调代码习惯影响阅读

什么是全栈

  界面UI设计,IOS,Androl,数据库,服务器,职位职责范围大不相同

Web全栈

  HTML/CSS页面的架构

  浏览器端的开发

  服务器端的开发

  数据库开发

  服务器运维  

 JavaScript能够开发哪些栈

  Moongodb(文档数据库,几乎不需要配置就可以在程序中直接使用了)

  Express

  AngularJs (MVC)

  NodeJs

Node的执行环境

  Google V8

  文件系统 Node的核心模块 fs , 通过它Node可以对文件进行读取,写入,改名,删除,遍历,连接等操作

  网络功能  http模块,dns模块,net模块,tls模块,socket.io模块

  二进制 Buffer

  数据流  分为:可读流和可写流

  加密与解密 (crypto)哈希算法

原文地址:https://www.cnblogs.com/sowhite/p/6393607.html