可遷移性意味著企業(yè)可以將應(yīng)用程序從一個(gè)主機(jī)環(huán)境遷移到另一個(gè),其包括云平臺(tái)之間的遷移。例如從Amazon Web Services到Microsoft Azure。而將應(yīng)用程序從一個(gè)平臺(tái)遷移到另一個(gè)平臺(tái)所需的工作取決于具體情況。
容器是一種將應(yīng)用程序和操作系統(tǒng)封裝到可以在支持Docker或Kubernetes等容器標(biāo)準(zhǔn)平臺(tái)上運(yùn)行的軟件包的一種技術(shù),從而使其遷移變得更加簡(jiǎn)單。但容器并不是靈丹妙藥。
實(shí)際情況是,遷移應(yīng)用程序(無論它們是否在容器中)都需要大量的計(jì)劃來處理不同環(huán)境的兼容性問題。容器的使用并不能保證企業(yè)的容器化應(yīng)用程序都可以從一個(gè)平臺(tái)遷移到另一個(gè)平臺(tái)。例如,企業(yè)不能采用一個(gè)專門用于Linux的容器化應(yīng)用程序在Windows上運(yùn)行,或者反過來這么做。
事實(shí)上,容器實(shí)際上是將應(yīng)用程序與操作系統(tǒng)捆綁在一起的一種很好的方式。企業(yè)確實(shí)使用容器增強(qiáng)了可遷移性,但并沒有得到很多人認(rèn)為的可以在任何平臺(tái)遷移的結(jié)果。
當(dāng)然,企業(yè)需要可遷移性,并且可以擁有它。所有這一切都需要在創(chuàng)建應(yīng)用程序時(shí)進(jìn)行更多的規(guī)劃。
事實(shí)是,如果企業(yè)具有足夠的時(shí)間和資金,所有的應(yīng)用程序都是可遷移的。這種做法是創(chuàng)建一個(gè)應(yīng)用程序,將最少的工作量從一個(gè)平臺(tái)轉(zhuǎn)移到另一個(gè)平臺(tái)。使用容器或其他技術(shù)可以幫助企業(yè)提供跨平臺(tái)的應(yīng)用程序兼容性,但它們只是等式的一部分。所以,可遷移性不是二元的。
也許關(guān)于可遷移性最關(guān)鍵的一點(diǎn)是,企業(yè)需要付出巨大的代價(jià):由于使用了所有環(huán)境中最低的標(biāo)準(zhǔn),因此降低了性能。企業(yè)的應(yīng)用程序使用本地部署平臺(tái)或云平臺(tái)的特性越多,企業(yè)的應(yīng)用程序便于遷移的可能性就越小。其原因很簡(jiǎn)單:與特定的操作系統(tǒng)、語言、云平臺(tái)或其他技術(shù)相關(guān)聯(lián)的許多理想的功能結(jié)合在一起,而且這些功能不能按照原樣進(jìn)行遷移,有時(shí)候根本就無法遷移。
而緩解這種情況的唯一辦法是進(jìn)行規(guī)劃和設(shè)計(jì)。即使如此,技術(shù)也將一直在改變??蛇w移性永遠(yuǎn)不會(huì)是二元的,在遷移過程中很難不受到影響。
版權(quán)聲明:本文為企業(yè)網(wǎng)D1Net編譯,轉(zhuǎn)載需注明出處為:企業(yè)網(wǎng)D1Net,如果不注明出處,企業(yè)網(wǎng)D1Net將保留追究其法律責(zé)任的權(quán)利。