就是部署新版本的web app的时候,让旧版与新版的代码同时跑,只需将load balancer从旧版代码切换到指向新版代码。如果新代码有问题,可以瞬间rollback。

听起来很简单,实践起来有一些要注意的地方:1,db schema migration要先于部署代码(文中提到的);2,最好新旧版的代码使用不同的task queue(文中没提到的);3,如果有类似cron的定时任务的话,必须引入一定机制保证同一个job要嘛跑旧代码要嘛跑新代码(文中没提到)。

分享到: