springboot不停机更新(配合Nginx优雅发版)

一、前言

        一般来说,我们更新服务器的springboot项目需要先停下旧的jar包,然后运行新的jar包,中间有一小段时间用户没法访问,虽然时间很短,但是这样也会造成用户体验不好,通过Nginx可以达到无缝切换,优雅发版。注意,本文仅针对单台服务器的情况,多台服务器可以采用分批下线的方式达到无缝切换。

二、准备

        需要先安装Nginx,配置域名转发到指定端口

三、发版步骤

需要先配置Nginx,配置方式请百度。

        1.打新的jar包,注意端口需要与旧的jar包不同。

        2.放到服务器,运行新的jar包(此时新旧jar包都在运行)

        3.修改Nginx配置文件,把域名的转发端口指向新的jar包端口(修改后记得Nginx执行reload命令)

        4.验证是否成功转发到新的jar包

        5.关闭旧的jar包

四、总结

        通过上述步骤,基本可以做到用户无感知发版。需要注意的是,关掉旧的jar包前需要确认是否成功转发的新的jar包,springboot的某些连接未释放可能会导致配置文件修改不生效(我经历过Nginx没法刷新配置的情况,最后猜测是前端请求数据,后端迟迟未返回并且没有释放连接)。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值