zoukankan      html  css  js  c++  java
  • golang 的编译安装以及supervisord部署

    go的编译

    go的编译相对很简单,只需要一个命令即可完成,进入项目开发路径,输入

    go install <appName>
    

    即可在bin文件夹下生成可执行文件 appName。此文件可直接运行。
    备注:生成的可执行文件只包含go的程序文件,配置文件,views文件等需要拷贝过来,这样才能组成一个完整的运行程序。

    go的部署

    supervisord安装
    yum install setuptools //先安装工具
    yum install supervisor 
    
    修改配置文件
    vi /etc/supervisord.conf
    

    将最后一行的代码改为

    files = /etc/supervisord.conf.d/*.conf
    
    新增文件并编写配置
    vi /etc/supervisord.conf.d/appname.conf
    
    [program:appname]
    user=root
    command=/data/host/liudu/go/bin/appname
    autostart=true
    startsecs=10
    stdout_logfile=/data/host/liudu/golog/appname.log //此文件需手动创建
    stdout_logfile_maxbytes=1MB
    stdout_logfile_backups=10
    stdout_capture_maxbytes=1MB
    stderr_logfile=/data/host/liudu/golog/appname.log
    stderr_logfile_maxbytes=1MB
    stderr_logfile_backups=10
    stderr_capture_maxbytes=1MB
    stopsignal=INT
    [supervisord]                        
    
    command:表示运行的命令,填入完整的路径即可。
    autostart:表示是否跟随supervisor一起启动。
    autorestart:如果该程序挂了,是否重新启动。
    stdout_logfile:终端标准输出重定向文件。
    stderr_logfile:终端错误输出重定向文件。
    
    启动服务
    supervisord -c /etc/supervisord.conf.d/renmaiApi/conf
    

    supervisord 管理

    • supervisord,初始启动Supervisord,启动、管理配置中设置的进程。
    • supervisorctl stop programxxx,停止某一个进程(programxxx),programxxx为[program:appname]里配置的值,这个示例就是appname。
    • supervisorctl start programxxx,启动某个进程
    • supervisorctl restart programxxx,重启某个进程
    • supervisorctl stop groupworker: ,重启所有属于名为groupworker这个分组的进程(start,restart同理)
    • supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
    • supervisorctl reload,载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程。
    • supervisorctl update,根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启。

    注意:显示用stop停止掉的进程,用reload或者update都不会自动重启。

    错误记录

    Error: Another program is already listening on a port that one of our HTTP servers is configured to use.  Shut this program down first before starting supervisord.
    For help, use /usr/bin/supervisord -h
    

    解决办法

    find / -name supervisor.sock
    unlink /***/supervisor.sock
    
    
  • 相关阅读:
    几个关于设计的小问题
    基于建立/保持时间等的参数化时序分析
    Stratix内嵌存储器测试报告
    采用流水线技术实现8位加法器
    运算顺序引发的一系列有趣问题
    PON系统基础知识简介
    某MDU产品OMCI软件升级加速方案
    研究生期间接受的指导(二)
    研究生期间接受的指导(一)
    1063 Set Similarity (25 分)
  • 原文地址:https://www.cnblogs.com/spnt/p/5069554.html
Copyright © 2011-2022 走看看