zoukankan      html  css  js  c++  java
  • 使用forever运行nodejs应用

    何为forever

    forever可以看做是一个nodejs的守护进程,能够启动,停止,重启我们的app应用。

    官方的说明是说:

    A simple CLI tool for ensuring that a given script runs continuously (i.e. forever).

    // 一个用来持续(或者说永远)运行一个给定脚本的简单的命令行工具

    Github地址:https://github.com/nodejitsu/forever

    用途

    forever的用途就是帮我们更好的管理我们node App服务,本质上就是在forever进程之下,创建一个node app的子进程。

    比如,你有一个基于express的或者其他的一些个应用那么,它将会很方便你更新和操作你的服务,并且保证你服务能持续运行。

    更好的一点就是每次更改文件,它都可以帮你自动重启服务而不需要手动重启。

    当Node程序异常停止后,forever会立即重启进程,从而保证程序的健壮性和稳定性。

    Forever是一个命令行工具,forever开发方提供了forever-monitor模块,通过这个模块你可以将forever集成到你的项目中。

    安装forever

    // 记得加-g,forever要求安装到全局环境下

    sudo npm install forever -g

    forever使用说明

    启动相关

    // 1. 简单的启动

    forever start app.js

    // 2. 指定forever信息输出文件,当然,默认它会放到~/.forever/forever.log

    forever start -l forever.log app.js

    // 3. 指定app.js中的日志信息和错误日志输出文件,

    // -o 就是console.log输出的信息,-e 就是console.error输出的信息

    forever start -o out.log -e err.log app.js

    // 4. 追加日志,forever默认是不能覆盖上次的启动日志,

    // 所以如果第二次启动不加-a,则会不让运行

    forever start -l forever.log -a app.js

    // 5. 监听当前文件夹下的所有文件改动

    forever start -w app.js

    文件改动监听并自动重启

    // 1. 监听当前文件夹下的所有文件改动(不太建议这样)

    forever start -w app.js

    显示所有运行的服务

    forever list

    停止操作

    // 1. 停止所有运行的node App

    forever stop all

    // 2. 停止其中一个node App

    forever stop app.js

    // 当然还可以这样

    // forever list 找到对应的id,然后:

    forever stop [id]

    重启操作

    重启操作跟停止操作保持一致。

    // 1. 启动所有

    forever restart all

    比较常用到的命令上面都简单列出来了.还有一些参数需要搭配命令使用,比如制定输出日志和错误日志路径等.

    常见的参数配置

    -m MAX: 运行指定脚本的次数

    -l LOGFILE: 输出日志到LOGFILE

    -o OUTFILE: 输出控制台信息到OUTFILE

    -e ERRFILE: 输出控制台错误在ERRFILE

    -p PATH: 根目录

    -c COMMAND: 执行命令,默认是node

    -a, –append: 合并日志

    -f, –fifo: 流式日志输出

    -n, –number: 日志打印行数

    –pidFile: pid文件

    –sourceDir: 源代码目录

    –minUptime: 最小spinn更新时间(ms)

    –spinSleepTime: 两次spin间隔时间

    –colors: 控制台输出着色

    –plain: –no-colors的别名,控制台输出无色

    -d, –debug: debug模式

    -v, –verbose: 打印详细输出

    -s, –silent: 不打印日志和错误信息

    -w, –watch: 监控文件改变

    –watchDirectory: 监控顶级目录

    –watchIgnore: 通过模式匹配忽略监控

    -h, –help: 命令行帮助信息

    更多forever用法,可以使用forever --help查看使用帮助,也可以在github上查看:forever

  • 相关阅读:
    chrome浏览器中安装以及使用Elasticsearch head 插件
    windows10 升级并安装配置 jmeter5.3
    linux下部署Elasticsearch6.8.1版本的集群
    【Rollo的Python之路】Python 爬虫系统学习 (八) logging模块的使用
    【Rollo的Python之路】Python 爬虫系统学习 (七) Scrapy初识
    【Rollo的Python之路】Python 爬虫系统学习 (六) Selenium 模拟登录
    【Rollo的Python之路】Python 爬虫系统学习 (五) Selenium
    【Rollo的Python之路】Python 爬虫系统学习 (四) XPath学习
    【Rollo的Python之路】Python 爬虫系统学习 (三)
    【Rollo的Python之路】Python sys argv[] 函数用法笔记
  • 原文地址:https://www.cnblogs.com/MakeView660/p/8427052.html
Copyright © 2011-2022 走看看