共找到2條詞條名為微服務的結果 展開

微服務

一種新型軟體架構

所謂的微服務是SOA架構下的最終產物,該架構的設計目標是為了肢解業務,使得服務能夠獨立運行。微服務設計原則:1、各司其職 2、服務高可用和可擴展性

簡介


微服務是一個新興的軟體架構,就是把一個大型的單個應用程序和服務拆分為數十個的支持微服務。一個微服務的策略可以讓工作變得更為簡便,它可擴展單個組件而不是整個的應用程序堆棧,從而滿足服務等級協議。
對於大型應用程序來說,增加更多的用戶則意味著提供更大型的彈性計算雲(EC2)實例規模,即便只是其中的一些功能擴大了規模亦是如此。其最終結果就是企業用戶只需為支持超過微服務的那部分需求的EC2實例支付費用。

微服務的優點


微服務應用的一個最大的優點是,它們往往比傳統的應用程序更有效地利用計算資源。這是因為它們通過擴展組件來處理功能瓶頸問題。這樣一來,開發人員只需要為額外的組件部署計算資源,而不需要部署一個完整的應用程序的全新迭代。最終的結果是有更多的資源可以提供給其它任務。
微服務應用程序的另一個好處是,它們更快且更容易更新。當開發者對一個傳統的單體應用程序進行變更時,他們必須做詳細的QA測試,以確保變更不會影響其他特性或功能。但有了微服務,開發者可以更新應用程序的單個組件,而不會影響其他的部分。測試微服務應用程序仍然是必需的,但它更容易識別和隔離問題,從而加快開發速度並支持DevOps和持續應用程序開發。
第三個好處是,微服務架構有助於新興的雲服務,如事件驅動計算。類似AWS Lambda這樣的功能讓開發人員能夠編寫代碼處於休眠狀態,直到應用程序事件觸發。事件處理時才需要使用計算資源,而企業只需要為每次事件,而不是固定數目的計算實例支付。
什麼是微服務?
維基上對其定義為:一種軟體開發技術- 面向服務的體系結構(SOA)架構樣式的一種變體,將應用程序構造為一組鬆散耦合的服務。在微服務體系結構中,服務是細粒度的,協議是輕量級的。
微服務(或微服務架構)是一種雲原生架構方法,其中單個應用程序由許多鬆散耦合且可獨立部署的較小組件或服務組成。這些服務通常
● 有自己的堆棧,包括資料庫和數據模型;
● 通過REST API,事件流和消息代理的組合相互通信;
● 和它們是按業務能力組織的,分隔服務的線通常稱為有界上下文。
儘管有關微服務的許多討論都圍繞體系結構定義和特徵展開,但它們的價值可以通過相當簡單的業務和組織收益更普遍地理解:
● 可以更輕鬆地更新代碼。
● 團隊可以為不同的組件使用不同的堆棧
● 組件可以彼此獨立地進行縮放,從而減少了因必須縮放整個應用程序而產生的浪費和成本,因為單個功能可能面臨過多的負載。