甚麼是微服務?
微服務(Microservice)是一種軟件架構模型,正得到越來越多的關注,要理解微服務,要先理解軟件架構的演變,以往的軟件把所有的功能都寫在一起,這稱為單體架構(Monolithic)。
單體架構的大型軟件,因為所有功能都耦合在一起,會形成難以維護的複雜代碼,導致軟件擴展性差,開發速度慢等的問題。
使用微服務架構,它將一個大型應用程序分解成多個可以相互執行、通信的服務,每個服務是一個較小的程序,負責不同的功能且能夠獨立運行,服務之間使用輕量級API接口相互通信,因為相互獨立的原因,因此它們可以在不同的語言或技術上開發,並根據具體應用需要選擇更適合的服務來部署。
微服務具有以下的優點:
1. 軟件中每個服務能單獨進行開發、部署和運行,便於開發和測試。
2. 軟件分為更小型的模塊,鼓勵了代碼重用。
3. 不容易出現單點故障。
4. 不同服務能夠由不同團隊負責,縮短開發周期。
5. 不同服務能運行於本機、異地伺服器或雲端,增加靈活性。
總括而言,微服務架構模型具有許多優點,它可以幫助開發人員簡化開發過程,讓應用程序更容易更新和維護,並且可以支持大量用戶,微服務因為這些的優點,它和容器技術、雲服務將在未來軟件開發中扮演更重要的角色。
盧德誠