Node.js 学习笔记(一)--------- Node.js的认识和Linux部署
Node.js
一、Node.js 简介
简单的说 Node.js 就是运行在服务端的可以解析并运行 JavaScript 脚本的软件。
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。
二、Node.js 的特点
1. 单线程 :不同于 Apache 服务器的多线程处理请求特点,这也决定了它可以已极低的内存消耗进行单线程处理更多的请求。
2. 异步非阻塞 I / O ;
3. 事件驱动;
4. npm 包管理工具;
5. 稳定性较差。
三、Linux系统中的安装使用
1. 下载
官方网址 : https://nodejs.org/en/
中文网址 : http://nodejs.cn/
2. 解压
tar -xf node-v6.11.0-linux-x64.tar.xz
3. 移动
mv node-v6.11.0-linux-x64 /usr/local/node
4. 配置
环境变量
vim ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/node/bin
5. 刷新
source ~/.bash_profile
6. 查看版本信息
node -v
npm -v
四、基本使用
我们在服务器端编写 js 脚本,使用 node.js 输出 Hello World
// 1. 引入 node 内置的 http 模块儿
var http = require('http'); // 2. 创建服务
var server = http.createServer(function(req, res)
{
// 逻辑代码 并给客户端返回结果 // 快速结束响应
res.end('hello world');
}); // 3. 监听端口
server.listen(8080);
五、npm 包管理工具的使用方法
npm
简介
可以理解为一个包依赖管理工具,好比360软件官家。
https://www.npmjs.com/
使用
1.初始化 npm
npm init --yes
2.查找软件
npm search formidable
3.安装软件
(1)记录安装信息(生产环境使用)
这样安装会生成 package.json 文件,包含项目中安装的node_models
便于转移项目。
npm install formidable --save
package.json 文件内容示例:
{
"dependencies": {
"ejs": "^2.5.6",
"express": "^4.15.3"
}
}
(2)不记录安装信息
npm install formidable
4.移除软件
npm uninstall fomidable
5.查看已经安装的包列表
npm list
6.配置中文镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org
配置后,安装模块,删除模块使用cnpm 调用命令
7.模块的使用
模块的加载机制
路径
绝对路径
相对路径
模块的使用
npm init --yes
npm install formidable
删除 node_modules
npm uninstall formidable
Node.js 学习笔记(一)--------- Node.js的认识和Linux部署的更多相关文章
- WebGL three.js学习笔记 创建three.js代码的基本框架
WebGL学习----Three.js学习笔记(1) webgl介绍 WebGL是一种3D绘图协议,它把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的 ...
- Node.js学习笔记(1) - Node.js简介
近期在看一些Node.js的知识,看完后觉得,一些前面的东西忘记了,于是整理一下,方便自己查阅,也希望对学习Node.js的朋友有些帮助: 当然以下只是我个人的观点和理解,不喜勿喷,也望大神指教. 一 ...
- Node.js学习笔记(2) - Node.js安装及入门hello world
今天来简单的记录一下Node.js的安装配置以及简单的入门 一.Node.js的安装 1.windows下的安装 windows下的安装很简单,只需要去官网http://nodejs.org中,找到w ...
- Node.js学习笔记(八) --- Node.js的路由模块封装
1 .模块化的方式封装 整理中… 2 .封装仿照 express 的路由整理中…
- Node.js学习笔记(七) --- Node.js的静态文件托管、路 由、EJS 模板引擎、GET 、POST
1 . Nodejs 静态文件托管静态 web 服务器封装 2 . 路由 官方解释: 路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET.POST 等)组成的, ...
- JS学习笔记(模态框JS传参)
博主最近基于django框架的平台第一版差不多完成了 今天整理下开发过程中遇到的前端知识 基于前端bootstrap框架模态框传参问题 上前端html代码: <div class="m ...
- 2019-4-29 js学习笔记
js学习笔记一:js数据类型 1:基本数据类型 number类型(整数,小数) String类型 boolean类型 NaN类型其实是一个nu ...
- 基于jquery的插件turn.js学习笔记
基于jquery的插件turn.js学习笔记 简介 turn.js是一个可以实现3d书籍展示效果的jq插件,使用html5和css3来执行效果.可以很好的适应于ios和安卓等触摸设备. How it ...
- 一点感悟:《Node.js学习笔记》star数突破1000+
写作背景 笔者前年开始撰写的<Node.js学习笔记> github star 数突破了1000,算是个里程碑吧. 从第一次提交(2016.11.03)到现在,1年半过去了.突然有些感慨, ...
- Node.js学习笔记(3):NPM简明教程
Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@ ...
随机推荐
- Xcode括号自动补全以及二次编译后不显示输入
今天遇到了一个大坑,在使用栈来进行计算表达式的时候,发现输入括号就报错,以及二次编译后不显示. 测试了好久,经过无数次debug后. 二次编译不显示还是没搞明白,不过输入倒是没什么问题,就是不显示出来 ...
- 对于一些seo查询网站的整理
个人在查找网站seo问题时所使用的一些网站整理以及一些注意事项(同时感谢在处理问题过程中给予帮助的小伙伴们): 1.seo综合查询 (爱站网/站长工具)这俩工具的计算规则不相同所以计算结果出来也 ...
- Gym-101873D-Pants On Fire(闭包)
原题链接:2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017) Pants On Fire Donald and M ...
- 4、Caffe其它常用层及参数
借鉴自:http://www.cnblogs.com/denny402/p/5072746.html 本文讲解一些其它的常用层,包括:softmax_loss层,Inner Product层,accu ...
- Python unittest第二篇:测试夹具
关于测试夹具,我们知道,以类为对象的话,在python里对应的方法分别是test_isupper.test_upper, 那么以测试case为单位呢? 这时候,就要提到我们的setup()和tearD ...
- Unity脚本生命周期与执行顺序
文章目录 脚本生命周期 MonoBehavior生命周期图 脚本执行顺序 自定义执行顺序 在Unity中,脚本可以理解为附加在游戏对象上的用于定义游戏对象行为的指令代码.必须绑定在游戏对象上才能开始它 ...
- 大数据-HBase HA集群搭建
1.下载对应版本的Hbase,在我们搭建的集群环境中选用的是hbase-1.4.6 将下载完成的hbase压缩包放到对应的目录下,此处我们的目录为/opt/workspace/ 2.对已经有的压缩包进 ...
- Prufer序列与树的计数(坑)
\(prufer\)序列: 无根树转\(prufer\)序列: 不断找编号最小的叶子节点,删掉并在序列中加入他相连的节点. \(prufer\)转无根树: 找到在目前\(prufer\)序列中未出现且 ...
- 思维题--code forces round# 551 div.2
思维题--code forces round# 551 div.2 题目 D. Serval and Rooted Tree time limit per test 2 seconds memory ...
- Python+USB+Vnet+FTP传输文件开发记录
做一个Python+USB+Vnet+FTP传输文件开发记录