zoukankan      html  css  js  c++  java
  • centos下 forever: 让nodejs应用后台执行

    在LINUX中我们可以使用这种简单的方式让node.js在后台运行:

    nohup node your_app.js &


    forever可以让我们做得更好,并且可以跨平台的在windows和Linux下都能运行。
     

    forever的安装:

    npm install forever -g

     

    forever的用法:
    使用forever启动守护进程:

    forever start your_app.js


    关闭守护进程:

    forever stop your_app.js


    重启守护进程::

    forever restart your_app.js


    如果需要记录输出日志和错误:

    forever start -l forever.log -o out.log -e err.log your_app.js


    查看正在运行的程序:

    forever list

    查看forever帮助

    forever -h

    help: usage: forever [action] [options] SCRIPT [script-options]
    help:
    help: Monitors the script specified in the current process or as a daemon
    help:
    help: actions:
    help: start Start SCRIPT as a daemon
    help: stop Stop the daemon SCRIPT by Id|Uid|Pid|Index|Script
    help: stopall Stop all running forever scripts
    help: restart Restart the daemon SCRIPT
    help: restartall Restart all running forever scripts
    help: list List all running forever scripts
    help: config Lists all forever user configuration
    help: set <key> <val> Sets the specified forever config <key>
    help: clear <key> Clears the specified forever config <key>
    help: logs Lists log files for all forever processes
    help: logs <script|index> Tails the logs for <script|index>
    help: columns add <col> Adds the specified column to the output in `forever list`
    help: columns rm <col> Removed the specified column from the output in `forever list`
    help: columns set <cols> Set all columns for the output in `forever list`
    help: columns reset Resets all columns to defaults for the output in `forever list`
    help: cleanlogs [CAREFUL] Deletes all historical forever log files
    help:
    help: options:
    help: -m MAX Only run the specified script MAX times
    help: -l LOGFILE Logs the forever output to LOGFILE
    help: -o OUTFILE Logs stdout from child script to OUTFILE
    help: -e ERRFILE Logs stderr from child script to ERRFILE
    help: -p PATH Base path for all forever related files (pid files, etc.)
    help: -c COMMAND COMMAND to execute (defaults to node)
    help: -a, --append Append logs
    help: -f, --fifo Stream logs to stdout
    help: -n, --number Number of log lines to print
    help: --pidFile The pid file
    help: --uid Process uid, useful as a namespace for processes (must wrap in a string)
    help: e.g. forever start --uid "production" app.js
    help: forever stop production
    help: --sourceDir The source directory for which SCRIPT is relative to
    help: --workingDir The working directory in which SCRIPT will execute
    help: --minUptime Minimum uptime (millis) for a script to not be considered "spinning"
    help: --spinSleepTime Time to wait (millis) between launches of a spinning script.
    help: --colors --no-colors will disable output coloring
    help: --plain alias of --no-colors
    help: -d, --debug Forces forever to log debug output
    help: -v, --verbose Turns on the verbose messages from Forever
    help: -s, --silent Run the child script silencing stdout and stderr
    help: -w, --watch Watch for file changes
    help: --watchDirectory Top-level directory to watch from
    help: --watchIgnore To ignore pattern when watch is enabled (multiple option is allowed)
    help: --killSignal Support exit signal customization (default is SIGKILL)
    help: used for restarting script gracefully e.g. --killSignal=SIGTERM
    help: -h, --help You're staring at it
    help:
    help: [Long Running Process]
    help: The forever process will continue to run outputting log messages to the console.
    help: ex. forever -o out.log -e err.log my-script.js
    help:
    help: [Daemon]
    help: The forever process will run as a daemon which will make the target process start
    help: in the background. This is extremely useful for remote starting simple node.js scripts
    help: without using nohup. It is recommended to run start with -o -l, & -e.
    help: ex. forever start -l forever.log -o out.log -e err.log my-daemon.js
    help: forever stop my-daemon.js

    forever命令行的中文解释

    子命令actions:

    • start:启动守护进程
    • stop:停止守护进程
    • stopall:停止所有的forever进程
    • restart:重启守护进程
    • restartall:重启所有的foever进程
    • list:列表显示forever进程
    • config:列出所有的用户配置项
    • set <key> <val>: 设置用户配置项
    • clear <key>: 清楚用户配置项
    • logs: 列出所有forever进程的日志
    • logs <script|index>: 显示最新的日志
    • columns add <col>: 自定义指标到forever list
    • columns rm <col>: 删除forever list的指标
    • columns set<cols>: 设置所有的指标到forever list
    • cleanlogs: 删除所有的forever历史日志

    配置参数options:

    • -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: 命令行帮助信息

    转载:http://www.itkubo.com/201310293.html

  • 相关阅读:
    乌龟棋 (codevs 1068)题解
    全排列 (codevs 1294)题解
    最小伤害 题解
    编码问题 题解
    基础DAY3-运算符 逻辑运算符 if elif
    图解算法——合并k个排序列表(Merge k Sorted Lists)
    算法图解——组合求和( Combination Sum)
    make命令使用 & makefile编写详解
    并发工具CountDownLatch源码分析
    线程局部变量ThreadLocal实现原理
  • 原文地址:https://www.cnblogs.com/qiuer/p/5488854.html
Copyright © 2011-2022 走看看