在生产环境部署不停机更新

每次上产环境需要上线版本的时候,都会通知客户停机更新,我想有没有一种可以不用停机也能进行更新服务的技术呢。

灰度发布,其实也就是多台服务器来回切换新旧版本问题

热切换 后端集群,负载均衡,停掉旧服务,直接走新服务。
当然一般会做灰度也叫金丝雀

这种方式最好是做负载均衡集群,这样后期在发版的时候,就可以先下掉一批服务,然后把新的包替换掉刚刚下线的服务,依次类推,直到部署完所有服务。
我们生产也有单节点的服务,注册中心用的是nacos,很早之前部署服务都是晚上十点以后,如果有问题可能会忙到很晚。后来我就改成白天发版了,晚上发版太熬人了。就是发版前会在生产环境同一个安全组下面买一台临时服务器,把基础依赖环境安装好,然后要发布的java服务的jar包在生产服务器和买的临时服务器上都推送上去,然后在nacos注册中心里面把需要发版的服务全部下线,然后就依次启动服务。等启动好以后再从nacos里面下线另一批服务,然后再次启动。等全部启动好以后,就把临时服务器上的所有服务在nacos里面再次下线,然后把临时服务器关机。虽然有点麻烦,但是不会影响客户体验。像灰度发布,滚动升级等一般在大公司才会用到,刚才说的类似于灰度发布。

简单来说,就是做集群。

  • 给你找了一篇非常好的博客,你可以看看是否有帮助,链接:生产环境部署