V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fengshils
V2EX  ›  Node.js

express 后端使用 pkg 打包后,如何实现类似 pm2 多进程部署以及守护

  •  
  •   fengshils · 120 天前 · 1292 次点击
    这是一个创建于 120 天前的主题,其中的信息可能已经有所发展或是发生改变。
    继续上次发帖后,nodejs 的 express 后端使用 pkg 打包后,目前没什么问题,但是似乎没有办法使用 pm2 进行多进程部署了,是否还有更好的方案或者解决部署问题
    8 条回复    2024-07-15 10:02:53 +08:00
    cheneydog
        1
    cheneydog  
       120 天前
    1. pkg 打包之后的可执行文件,依然可以用 pm2 部署。pm2 要额外单独装在服务器上。
    2. nodejs 本身支持多进程可以使用 cluster 模块,pkg 直接打包到内部。
    3. 守护进程可以用 pm2 、也可以用操作系统的 service ,做成 docker 也行。
    horizon
        2
    horizon  
       120 天前
    「守护进程可以用 pm2 、也可以用操作系统的 service ,做成 docker 也行」
    细说 docker 来守护
    fengshils
        3
    fengshils  
    OP
       120 天前
    @cheneydog 守护进程考察了 systemd ,大概率可行,就差一个多进程 cluster 难搞,我查查资料去
    Belmode
        4
    Belmode  
       120 天前
    @fengshils 可以参考一下 eggjs 的 cluster 实现,他们做好了。
    magicdawn
        5
    magicdawn  
       119 天前
    pm2 用 fork mode, 监听多个端口, 然后用 nginx/caddy 的负载均衡打到这几个端口
    fengshils
        6
    fengshils  
    OP
       119 天前
    放弃 pkg 了 使用了 node 自带的 cluster 模块,后续观察下,pkg 打包 arm 版本容易出现问题,换 ncc 打包了
    humbass
        7
    humbass  
       116 天前
    不对啊,node 20 + 版本,官方有打包教程 https://nodejs.org/api/single-executable-applications.html
    fengshils
        8
    fengshils  
    OP
       115 天前
    @humbass 前几天还实验性功能 ,可就进正式了啊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1131 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 18:55 · PVG 02:55 · LAX 10:55 · JFK 13:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.