隨著互聯(lián)網(wǎng)的快速發(fā)展,企業(yè)和服務(wù)提供商正在尋找更好的方法將應(yīng)用程序部署在云環(huán)境中,微服務(wù)被認(rèn)為是未來的方向。通過將應(yīng)用和服務(wù)分解成更小的、松散耦合的組件,它們可以更加容易升級和擴(kuò)展,微服務(wù)作為一項在云中部署應(yīng)用和服務(wù)的新技術(shù)已成為當(dāng)下最新的熱門話題。
對于微服務(wù),中培偉業(yè)《微服務(wù)架構(gòu)設(shè)計與最佳實踐》培訓(xùn)專家胡老師指出,微服務(wù)應(yīng)用的一個最大的優(yōu)點是,它們往往比傳統(tǒng)的應(yīng)用程序更有效地利用計算資源。這是因為它們通過擴(kuò)展組件來處理功能瓶頸問題。這樣一來,開發(fā)人員只需要為額外的組件部署計算資源,而不需要部署一個完整的應(yīng)用程序的全新迭代。最終的結(jié)果是有更多的資源可以提供給其它任務(wù)。
一種軟件架構(gòu)模式
復(fù)雜應(yīng)用解耦為小而眾的服務(wù)
各服務(wù)精而專
服務(wù)間通信通過API完成
微服務(wù)應(yīng)用程序的另一個好處是,它們更快且更容易更新。當(dāng)開發(fā)者對一個傳統(tǒng)的單體應(yīng)用程序進(jìn)行變更時,他們必須做詳細(xì)的QA測試,以確保變更不會影響其他特性或功能。但有了微服務(wù),開發(fā)者可以更新應(yīng)用程序的單個組件,而不會影響其他的部分。測試微服務(wù)應(yīng)用程序仍然是必需的,但它更容易識別和隔離問題,從而加快開發(fā)速度并支持DevOps和持續(xù)應(yīng)用程序開發(fā)。
第三個好處是,微服務(wù)架構(gòu)有助于新興的云服務(wù),如事件驅(qū)動計算。類似AWS Lambda這樣的功能讓開發(fā)人員能夠編寫代碼處于休眠狀態(tài),直到應(yīng)用程序事件觸發(fā)。事件處理時才需要使用計算資源,而企業(yè)只需要為每次事件,而不是固定數(shù)目的計算實例支付。