虛擬化棧
有自己服務(wù)器集群的企業(yè)更傾向于使用虛擬化,以便封裝他們應(yīng)用的不同組件。
根據(jù)你的需求,有很多相應(yīng)的不同解決方案。
虛擬化解決方案提供了虛擬機(jī),具有如網(wǎng)絡(luò)設(shè)備和CPU的虛擬硬件。有時(shí)候我們會(huì)混淆虛擬化和容器技術(shù),因?yàn)樗鼈冇幸恍┫嗨浦帯?/p>
你可以使用虛擬化技術(shù)去模擬和物理硬件完全不同的硬件。這通常被稱為仿真。如果你想在自己的開發(fā)機(jī)器上仿真移動(dòng)設(shè)備去測(cè)試移動(dòng)應(yīng)用,你可以使用虛擬化技術(shù)去仿真設(shè)備。目標(biāo)平臺(tái)越接近底層硬件,模擬器在仿真的過程中效率越高。舉個(gè)例子,你可以用QEMU模擬器仿真一個(gè)Android設(shè)備。如果在x86 64位的開發(fā)機(jī)器上仿真一個(gè)Android x86 64設(shè)備,要比在x86 64位的開發(fā)機(jī)器上仿真基于ARM的Android設(shè)備效率更高。
使用服務(wù)器虛擬化技術(shù),你通常不用擔(dān)心仿真的可能性。相反,你更在意封裝應(yīng)用的服務(wù)組件。例如,如果一個(gè)應(yīng)用服務(wù)器組件瘋狂運(yùn)行并且不合理地消耗大量的CPU時(shí)間以及其他資源,你不會(huì)希望整個(gè)物理機(jī)完全停止服務(wù)。
通過在一個(gè)64核的機(jī)器上創(chuàng)建一個(gè)雙核的虛擬機(jī),也許可以解決這個(gè)問題。在應(yīng)用運(yùn)時(shí)CPU只有兩個(gè)核心受到影響。同理內(nèi)存的分配也是一樣。