【BAE3.0使用系列】BAE2.0应用迁移至3.0指南

1       概述

本文针对有成熟BAE2.0应用的开发者,为其提供迁移到BAE3.0的协助。首先介绍BAE3.0迁移的必要性,以及迁移开发的注意事项,然后介绍迁移的基本流程,并介绍了如何通过迁移协助页来保留2.0的数据库以及域名资源。

BAE3.0的wiki页:http://developer.baidu.com/wiki/index.php?title=docs/cplat/bae

BAE3.0的控制中心:http://developer.baidu.com/console

2       为什么要迁移到3.0

1、  好处:BAE3.0的应用开发无任何限制;且运行时独享资源,有完全的资源隔离,能有更好的稳定性以及性能。

详细可参考http://developer.baidu.com/wiki/index.php?title=docs/cplat/bae

2、  必要性

1) 因为BAE3.0中开发规范接近于用户本地原生开发体验,而2.0应用代码中残留的各种强制规范,在3.0不再支持,如果BAE直接强制迁移,可能会导致应用不可访问等问题,所以我们让用户自己进行迁移,以保证您的应用流量不受影响。迁移过程中,有任何问题,我们都会给予充分的协助。

2) 对于BAE2.0中迁移过来的应用,我们后续会赠送优惠券等措施,让支持BAE发展的老用户得到优惠。

3) 我们会在未来的1到2个月内,逐渐下线BAE2.0的管理平台,并不再维护。 因此,为了更好的运维支持,强烈建议尽快迁移。

4)在后续BAE2.0管理平台下线后,没来得及迁移的应用,流量不会受到影响。但是由于不会再增加更多机器资源,所以无法保证更多流量增长后的访问质量。

3       如何迁移

3.1      迁移注意事项

1、  BAE3.0中不再支持各类全局环境变量,例如2.0中的ak、sk、各类服务访问地址等。这些信息用户可以到管理页面中查看。所以代码中涉及到环境变量使用部分需要去掉。

2、  BAE3.0中不再内置任何服务的SDK,开发者需要自行在服务的Wiki页中下载SDK,或者在语言自身依赖规范中添加。详见Wiki的“扩展服务”文档。Cache等部分服务使用方式也有调整,所以需要相应调整。

3、  BAE3.0中各语言的目录规范和2.0有一些差异,所以需要先了解熟悉下。可以参考wiki中具体语言的开发介绍。

4、  BAE3.0中目前不支持taskqueue、counter、cron等服务,用户可以用redis、worker等替代。

5、  BAE3.0中没有开发中版本的概念,开发调试建议直接在线下本地开发环境中完成。http://developer.baidu.com/wiki/index.php?title=docs/cplat/bae/localdev  或者在另外部署中完成。

6、  BAE3.0中,发布和代码仓库ci是分离的,即不会像2.0一样,在svn或git ci后自动发布,而是在ci后,自行到管理控制台中进入“发布设置”——》点击“发布到最新版”。

3.2     迁移的基本流程

1、  在BAE3.0中创建应用并创建BAE部署。熟悉3.0的用法。

具体可参考《新手入门》

http://developer.baidu.com/wiki/index.php?title=docs/cplat/bae/start

2、  将2.0中的数据库(Redis、MongoDB、Mysql)迁移到3.0

有两种方式,推荐使用第二种:

1)  如不要求数据库为最新或数据库短期不会修改,可以将2.0的数据导出然后在3.0新建数据库后将数据导入。

2)  使用迁移至3.0的工具页面(旧版管理中心(2.0)—>应用管理页面—>云环境(BAE)—>迁移至BAE3.0)将数据库迁移到3.0的应用中。

注意:迁移成功后,BAE2.0的应用依然可以使用先前方式访问数据库,不影响线上流量;用户在BAE3.0管理页的扩展服务中才能看到数据库

3、  修改2.0应用代码到3.0部署中,调试。

4、  调试完成后。

 

a)有自有的绑定域名。

首先:修改绑定域名cname到新部署的duapp域名; 修改cname不会影响流量。

其次:在迁移到3.0工具页面中第四步,在选择希望绑定的v3主duapp域名,

注意:2.0解绑后到3.0应用重新绑定短暂过程中,会有非常短时间的流量丢失,在流量低峰操作; 如果迁移失败,且在老应用域名已解绑(或手工解绑),则可到v3应用——》发布设置中手工绑定自有域名。

b) 只有BAE的duapp域名,希望保留。

首先在BAE2.0应用的迁移至3.0的工具页面中保留duapp域名;删除2.0应用(在其之后,其他用户无法占用这个域名);在3.0中重新创建相同域名应用。使用步骤3的调试完成的代码上传。

3.3     如何将2.0应用资源迁移到3.0

可以保留的资源包括Mysql、MongoDB、Redis数据库,以及duapp域名。按如下页面将相应数据迁移至相应BAE3.0应用以及保留duapp域名。

入口: 旧版控制中心——》应用管理页面—>云环境(BAE)—>迁移至BAE3.0

 

此条目发表在 BAE使用 分类目录。将固定链接加入收藏夹。

发表评论