node.js后台快速搭建在阿里云(二)(pm2和nginx篇)

 

 

前期准备

简介

嗯……我只是个前端而已javascript


在第一部分说完了express篇。
后面继续项目的部署,这里主要说说篇pm2和nginxhtml


pm2和forever

一、forever

在提到pm2先说说 forever这个东西,使用过node.js可能都是有知道forever这个东西的。
顾名思义,就是让脚本永远的运行,除非你手动写命令去关闭。
关于forever的使用方法有两种,一种是命令行的形式,还有一种就是 forever-monitor前端

在这里特意提forever,是由于pm2和forever的功能很类似,不用pm2,用forever也是可以一样部署的。java

forever启动node

1
forever start app.js
JSON配置文件

除了经过js去运行 ,还能够配置json文件,例如linux

1
2
3
4
5
6
7
8
9
10
11
12
13
├── forever
│   └── development.json
└── index.js
 
// forever/development.json
{
     // Comments are supported
     "uid" : "app" ,
     "append" : true ,
     "watch" : true ,
     "script" : "index.js" ,
     "sourceDir" : "/home/myuser/app"
}

而后运行nginx

1
forever start ./forever/development.json
二、pm2

pm2详细用法能够参考 官方文档,写的至关详细,很不错。c++

附上 pm2中文版文档git

一张图pm2和forevergithub

 

数据只是担保活跃的程度
不太重点仍是介绍pm2

PM2是一个带有负载均衡功能的Node应用的进程管理器。它能够保持Node应用一直后台运行,在不中止的前提下更新,优化了系统任务管理。

pm2的安装

1
npm install pm2 -g

启动项目

1
pm2 start app.js

经常使用命令一览

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# General
 
$ npm install pm2 -g           # 安装 PM2
 
$ pm2 start app.js             #启动, Daemonize and auto-restart application (Node)
 
$ pm2 start app.py             # 启动, Daemonize and auto-restart application (Python)
 
$ pm2 start npm -- start       # 启动, Daemonize and auto-restart Node application
 
 
# Cluster Mode (Node.js only)
$ pm2 start app.js -i 4         # 启动四个应用程序实例
 
                                # 会给每一个网络装载网络均衡器
 
$ pm2 reload all               # 当即重启全部工做进程
 
$ pm2 scale [app-name] 10       # 使用10个工做进程
 
 
# Process Monitoring
$ pm2 list                     # 列出全部PM2启动的进程
 
$ pm2 monit                     # 列出每一个程序的详细状况和CPU使用状况
 
$ pm2 show [app-name]           # 列出程序的全部信息
 
 
# Log management
$ pm2 logs                     # 列出应用的日志
 
$ pm2 logs [app-name]           # 列出某个app的日志
 
$ pm2 logs --json               # 使用json格式列出日志
 
$ pm2 flush
$ pm2 reloadLogs
 
# Process State Management
$ pm2 start app.js --name= "api" # 启动应用,而且命名‘api’
 
$ pm2 start app.js -- -a 34     # Start app and pass option "-a 34" as argument
$ pm2 start app.js --watch     # 当文件改变的时候从新启动应用
 
$ pm2 start script.sh           # 启动bash脚本
 
$ pm2 start app.json           # 启动全部app.json中声明的程序
 
$ pm2 reset [app-name]         # Reset all counters
 
$ pm2 stop all                 # 中止全部应用
 
$ pm2 stop 0                   # 中止id为0的进程
 
$ pm2 restart all               # 重启全部应用
 
$ pm2 gracefulReload all       # Graceful reload all apps in cluster mode
$ pm2 delete all               # 关闭并删除全部应用
 
$ pm2 delete 0                 # 删除id为0的程序

nginx介绍

nginx作为HTTP服务器,有如下几项基本特性:

  • 处理静态文件,索引文件以及自动索引;打开文件描述符缓冲.
  • 无缓存的反向代理加速,简单的负载均衡和容错.
  • FastCGI,简单的负载均衡和容错.
  • 模块化的结构。包括gzipping, byte ranges, chunked responses,以及 SSI-filter等filter。若是由FastCGI或其它代理服务器处理单页中存在的多个SSI,则这项处理能够并行运行,而不须要相互等待。
  • 支持SSL 和 TLSSNI.
  • Nginx专为性能优化而开发,性能是其最重要的考量,实现上很是注重效率 。它支持内核Poll模型,能经受高负载的考验,有报告代表能支持高达 50,000个并发链接数。
  • Nginx支持热部署。它的启动特别容易, 而且几乎能够作到7*24不间断运行,即便运行数个月也不须要从新启动。你还可以在不间断服务的状况下,对软件版本进行进行升级。
nginx安装

官网下载地址 nginx下载

也可参考菜鸟教程,nginx安装配置

nginx的安装步骤以下

1、安装编译工具及库文件

1
yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

2、首先要安装 PCRE

一、下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

1
[root@bogon src] # wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

二、解压安装包:

1
[root@bogon src] # tar zxvf pcre-8.35.tar.gz

三、进入安装包目录

1
[root@bogon src] # cd pcre-8.35

四、编译安装

1
2
[root@bogon pcre-8.35] # ./configure
[root@bogon pcre-8.35] # make && make install

五、查看pcre版本

1
[root@bogon pcre-8.35] # pcre-config --version

3、安装 Nginx

一、下载 Nginx,下载地址:http://nginx.org/download/nginx-1.6.2.tar.gz

关于版本去官网可自行选择新的下载地址,在linux的安装方式仍是和下面同样

1
[root@bogon src] # wget http://nginx.org/download/nginx-1.6.2.tar.gz

二、解压安装包

1
[root@bogon src] # tar zxvf nginx-1.6.2.tar.gz

三、进入安装包目录

1
[root@bogon src] # cd nginx-1.6.2

四、编译安装

1
2
3
[root@bogon nginx-1.6.2] # ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
[root@bogon nginx-1.6.2] # make
[root@bogon nginx-1.6.2] # make install

五、查看nginx版本

1
[root@bogon nginx-1.6.2] # /usr/local/webserver/nginx/sbin/nginx -v

最后

以上大部分是pm2和nginx的简单介绍以及安装

未完待续^^……还有nginx的配置,以及在pm2如何配置nginx,绑定域名,经过外网浏览本身的网站……

相关文章
相关标签/搜索