应用向云平台进行迁移时,可以完全不重构,或进行部分重构,也可以进行完全的重构。本文将为您分析一下这三种方式的利弊。
假设现在有一个公司,他们有几千个应用要迁移到云平台之上,他们现在正面对的一个问题就是如何处理这几千个应用。
如果这几千个应用都要一一修改的话恐怕谁改谁发疯,但如果就这么完全不做修改地迁移到云平台则意味着并没有利用到云平台所提供的特性。
在将应用向云平台进行迁移时,有下面几种选择:
完全不做修改直接迁移,也就是平移(lift and shift)。
部分代码重构,针对云平台的特性进行修改。
完全重构,针对云平台进行修改,其他功能也重写。
部分重构仅仅修改应用特定的部分以便利用云计算平台的特性,完全重构则需要对应用的大部分代码进行重构。
平移的利与弊
利:
迁移的工作量最小
迁移部署速度快
弊:
没有利用云计算平台的特性
运营成本可能会比较高
部分重构的利与弊
利:
只需对应用作出部分修改
相比于完全重构迁移部署速度较快
弊:
只能利用云平台的某些特性
运营成本可能会比较高
完全重构的利与弊
利:
迁移后应用通常有较好的性能
可以对应用进行优化以降低运营成本
弊:
对应用进行完全重构花费较多
部署时间较慢
有一些应用自己的架构很完整,数据与逻辑的耦合很紧密,这类型的应用因为进行重构的代价太大就适合进行平移,如果在云平台运行时没有什么功能性的问题,那么进行重构就没什么说服力。
有一些涉及到关键业务的应用但设计却很差,这些应用如果直接平移到云平台,完全不利用云平台特性的话将会导致很高的运营开销。应用运行中也有可能会有性能和稳定性方面的问题。对于这种情况,应用的重要性可以成为我们对应用进行重构利用云平台优势的考量。
哪一种最好呢?答案是要依据应用及应用的商业目的来综合决定,所以建议企业在向云平台迁移之前对要迁移的应用进行充分的分析。