APP后台多版本共存

问题所在:

转眼之间APP已经上线一个多月了,用户数量呃呃呃勉强有2000注册用户。然后1.3版本的APP马上就要开发完毕了。

然后上线的话,1.1,1.2都要能保留。IOS和安卓都一样。

一:首先是接口版本

我想的方案就是,每个版本单独部署分v1,v2,v3以前的接口都不变化。直接部署新的API。这样是方便了部署,但是感觉有个很大的隐患就是如果修改了一个逻辑之前的所有项目有这个逻辑的版本都需要进行修改。

二:数据库的改变

每个版本的接口或多或少都会有数据库的变化,增删改等东西。

更新步骤:

1.首先先确定最新版本与原来版本的数据库结构的表区别。

2.将所有的新增的表结构设置合理的默认值,放置插入有错误。

3.停机更新(暂时还不考虑不停机更新),暂时定在晚上11点钟,先将服务停掉然后将老的数据库数据全部转移到新的数据库中来。

4.简单测试看看是否有错误。

 

最重要的一步就是对比数据库表结构的差异,大致步骤:

1.导出两个数据库表的表结构

mysqldump –uroot –p –d speedjump > speedjump1.sql

使用scp命令传输到令一台服务器上面

mysqldump –uroot –p –d speedjump > speedjump2.sql

-d 表示只导出结构,不需要导出数据。

2.比较

使用diff命令来比较

diff speedjump1.sql speedjump2.sql > diff.txt

3.有一些信息是无用的必须自增ID的值,最好剔除掉


sed
-i 's/AUTO_INCREMENT=[0-9]\{1,\}//' speedjump1.sql

再来进行比较。

posted @ 2016-05-12 15:40  呜呜啦啦拉  阅读(2253)  评论(1编辑  收藏  举报