springboot不停机更新(配合Nginx优雅发版)
一、前言
一般来说,我们更新服务器的springboot项目需要先停下旧的jar包,然后运行新的jar包,中间有一小段时间用户没法访问,虽然时间很短,但是这样也会造成用户体验不好,通过Nginx可以达到无缝切换,优雅发版。注意,本文仅针对单台服务器的情况,多台服务器可以采用分批下线的方式达到无缝切换。
二、准备
需要先安装Nginx,配置域名转发到指定端口
三、发版步骤
需要先配置Nginx,配置方式请百度。
1.打新的jar包,注意端口需要与旧的jar包不同。
2.放到服务器,运行新的jar包(此时新旧jar包都在运行)
3.修改Nginx配置文件,把域名的转发端口指向新的jar包
4.验证是否成功转发到新的jar包
5.关闭旧的jar包
四、总结
通过上述步骤,基本可以做到用户无感知发版。需要注意的是,关掉旧的jar包前需要确认是否成功转发的新的jar包,springboot的某些连接未释放可能会导致配置文件修改不生效(我经历过Nginx没法刷新配置的情况,最后猜测是前端请求数据,后端迟迟未返回并且没有释放连接)。
springboot不停机更新(配合Nginx优雅发版)相关推荐
- 【解决方案】SpringCloud项目优雅发版、部署
[解决方案]SpringCloud项目优雅发版.部署 参考文章: (1)[解决方案]SpringCloud项目优雅发版.部署 (2)https://www.cnblogs.com/fonxian/p/ ...
- 分享一例脚本发版和tomcat重启脚本
线上有个网站业务部署在tomcat上,由于频繁上线修改,需要经常启动tomcat. tomcat服务自带的bin下没有重启脚本,下面分享一例脚本发版和tomcat重启脚本: 1)现将业务代码从svn里 ...
- SpringBoot 2.3 新特性之优雅停机
1 SpringBoot 2.3 新特性之优雅停机 什么是优雅停机 先来一段简单的代码,如下: @RestController public class DemoController {@GetMap ...
- 王者服务器维护8月四日,8月4日体验服停机更新公告
亲爱的召唤师: 为了增加版本的稳定性,我们计划在2021年8月4日12:10-13:30对<王者荣耀>体验服进行停机维护. [更新时间]8月4日12:10-13:30(11:45关闭PVP ...
- 8月4日王者荣耀服务器维修几点,8月4日体验服停机更新公告
亲爱的召唤师: 为了增加版本的稳定性,我们计划在2021年8月4日12:10-13:30对<王者荣耀>体验服进行停机维护. [更新时间]8月4日12:10-13:30(11:45关闭PVP ...
- K8s上的Go服务怎么扩容、发版更新、回滚、平滑重启?教你用Deployment全搞定!
经过前面不少文章的铺垫,终于可以写这个大家都感兴趣的话题了,在前面两篇文章,我们讲了Kubernetes里的 Pod和 副本集ReplicaSet (RS) 这两个API对象.知道了Pod是Kuber ...
- 王者荣耀8月6日服务器维护,8月6日体验服停机更新公告
亲爱的召唤师: 为了增加体验服内容的丰富性和版本的稳定性,我们计划2018年8月6日20:45-8月7日1:45对<王者荣耀>体验服进行停机更新. [更新时间]2018年8月6日20:45 ...
- nginx 部署前端项目,不缓存html文件,项目发版后,不用手动刷新页面
nginx 部署前端项目,不缓存html文件,项目发版后,不用手动刷新页面 location / {expires 1h;root /home/test/vue/dist/;index index.h ...
- 王者服务器维护7月九号,6月9日体验服停机更新公告
亲爱的召唤师: 为了增加体验服内容的丰富性和版本的稳定性,我们计划2018年6月9日14:00-6月9日16:00对<王者荣耀>体验服进行停机更新. 更新完成时间将根据工作进度提前或延期, ...
最新文章
- 解决尺度不平衡,Facebook 全景分割新算法
- [原]missing #39;;#39; before #39;namesapce#39;错误的解决
- c语言学习题,C语言学习题目
- 深度学习总结:cycleGAN原理,实现图片风格切换,可以和之前的伪DL方式对比一下,pytoch实现
- Flink 架构:三层架构体系、运行时组件
- 亚洲综合竞争力排名发布:韩国位居第1,中国第9,大家怎么看?
- vivoiqooz1鸿蒙系统,iQOOZ1评测:vivo新一代性价比神机
- python纵向数据分析_python数据分析三个重要方法之:numpy和pandas
- 当博客系统遇上live2d后
- C# Winform App 获取当前路径
- 电商后台项目 + 源码
- java查看jar包依赖_java项目开发中如何查找到项目依赖的jar包?
- 学位真的那么重要吗?上交大博士亲述科研心路,获4万高赞,网友:这是知乎最好的回答...
- 慕课网翁恺老师《面向对象程序设计——Java语言》第一周课程笔记及作业题(设计一个表示分数的Fraction类)
- 免费的关于法律的英文文献的网址
- wireshark抓组播数据_wireshark过滤?wireshark 看端口号?wireshark组播包?WireShark 过滤语法...
- latex初学者入门(二)
- 地图慧一直显示服务器,瑞友慧连接服务端
- Linux相关的压缩解压缩命令
- 正确打开/解读Logit模型系数的方式——离散选择模型之四