Node.js

node.js首先是一个JavaScript的运行环境,其次,他才是一种服务端语言,一般作为js的后台语言,所以一般与js配合使用,作为前端语言的后台服务搭建。

node 的优势

        高异步IO node.js中没有多线程的概念,他的所有的操作都是在单线程下进行的,但这并不是说node不能处理高复杂性的业务逻辑,在node的底层架构中嵌入了多线程机制原理,所以,虽然node是无法操作多线程的语言,但是他将所有的IO操作进行异步处理,大大提高了程序的运行速度,这也是node被众多项目所采用的根本原因,google现在已经逐渐采用引入node作为其开源项目的服务端语言。

Node 虽然是高异步IO的处理业务佼佼者,但是因为缺少线程机制,所以node在复杂的逻辑计算方面性能并不好,不适合于大量计算运行的业务,这些需要大量运算的业务完全没有发挥node本身的优势,自然效果不行。

node 由于是js的运行环境,所以如果我们要在node上跑程序是需要安装node环境的,编译式安装:sudo apt-get,或者直接下载安装包,在安装node的同时,还会自动安装npm node packge manage node的包管理机制,在node中安装各种插件或依赖时就可以使用npm 命令,就像 ruby中的gem命令,这些都不重要。

npm run files

        在Node 中运行代码块所使用的命令。

模块化编程

        node里秉承着万物皆模块的思想,使用module.exports = {}将目标程序暴露,import将程序文件导入,

内置模块

        Node 内嵌了许多模块,共开发者使用:http query mysql ,express等 使用方法就是 引入模块 使用require 关键字下面分别介绍

http模块:创建http服务的模块

        require("http") / npm install http;

        创建服务,监听80端口:http.createServer({

       主机名: host:"",

       端口号: port:"",


}).listen(80);

mysql 模块:

        链接数据库的模块,当链接数请求多时,创建连接池pool,所有的后台的代码都放在一个文件夹中,这个文件夹在打包时会被解析,这也是前后端分离的思想。当前端或者后端出现问题时,整个项目就就只会波及一部分,并且更容易找出问题所在。

express 模块

        express是node第一个可以称之为框架的组件集合体,express囊括了几乎所有的express内嵌模块,除了MySQL这些功能模块,但是因为MySQL模块的安装方便,使用也很方便,所以说express模块能够搭建起一个完整的项目。

    安装

            require("express");

       使用并创建一个项目 express myProject

        初始化:myProject init

        

你可能感兴趣的:(Node.js)