應用向云平臺進行遷移時,可以完全不重構,或進行部分重構,也可以進行完全的重構。本文將為您分析一下這三種方式的利弊。
假設現在有一個公司,他們有幾千個應用要遷移到云平臺之上,他們現在正面對的一個問題就是如何處理這幾千個應用。
如果這幾千個應用都要一一修改的話恐怕誰改誰發瘋,但如果就這么完全不做修改地遷移到云平臺則意味著并沒有利用到云平臺所提供的特性。
在將應用向云平臺進行遷移時,有下面幾種選擇:
完全不做修改直接遷移,也就是平移(lift and shift)。
部分代碼重構,針對云平臺的特性進行修改。
完全重構,針對云平臺進行修改,其他功能也重寫。
部分重構僅僅修改應用特定的部分以便利用云計算平臺的特性,完全重構則需要對應用的大部分代碼進行重構。
平移的利與弊
利:
遷移的工作量最小
遷移部署速度快
弊:
沒有利用云計算平臺的特性
運營成本可能會比較高
部分重構的利與弊
利:
只需對應用作出部分修改
相比于完全重構遷移部署速度較快
弊:
只能利用云平臺的某些特性
運營成本可能會比較高
完全重構的利與弊
利:
遷移后應用通常有較好的性能
可以對應用進行優化以降低運營成本
弊:
對應用進行完全重構花費較多
部署時間較慢
有一些應用自己的架構很完整,數據與邏輯的耦合很緊密,這類型的應用因為進行重構的代價太大就適合進行平移,如果在云平臺運行時沒有什么功能性的問題,那么進行重構就沒什么說服力。
有一些涉及到關鍵業務的應用但設計卻很差,這些應用如果直接平移到云平臺,完全不利用云平臺特性的話將會導致很高的運營開銷。應用運行中也有可能會有性能和穩定性方面的問題。對于這種情況,應用的重要性可以成為我們對應用進行重構利用云平臺優勢的考量。
哪一種最好呢?答案是要依據應用及應用的商業目的來綜合決定,所以建議企業在向云平臺遷移之前對要遷移的應用進行充分的分析。