我读了某个地方(抱歉不记得来源),Facebook已经发布了星期二。他们首先向内部员工发布新功能,然后发布给一小部分外部用户,然后再传播给全世界。我相信谷歌也做了类似的事情
我主要与Microsoft堆栈(TFS源代码控制,IIS,asp.net,sql服务器与巨大的数据)。当然,面对公众的网站,所以他们必须要24x7x365。虽然我可以设想仅在其中一个服务器(在webfarm中)发布我的api / dll并进行测试,但如果有DB(存储过程签名,表模式更改),我该怎么办?目前我们正在版本化SP(新的将是mySPNameV2,其中旧的将是mySPNameV1 – 两个都采用不同的参数集,因此重命名),新的API将使用SP-V2,因为旧的API将继续使用SP -V1。
我看到一些设计气味,但有更好的方法吗?
编辑:我们将新代码发布到只有一个服务器并进行测试,难点是抽象(可能是抽象的不是正确的词,但是你可以得到想法)数据库模式从应用程序的多个并发版本更改