您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關springboot微服務的開發利器是什么,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
一、微服務和微服務架構
1.1)什么是微服務
把一個單一的應用程序劃分為一組小 的服務,每個小的服務都會運行在自己的進程中,服務之間通過輕量級的通信機制(http的rest api)進行通信,那么 一個個的小服務就是微服務。傳統的的單一電商應用來說,訂單,支付,用戶,商品,庫存等模塊都在一個項目中,若某一個模塊出 現線上bug,會導致整個版本發布回退. 若把單一應用拆分為一個一微服務,比如訂單微服務,用戶微服務,商品微服務,積分微服務等,若某 一個微服務出錯不會導致整個版本回退。
1.2)什么是微服務架構
微服務架構是一種架構模式(用于服務管理微服務的),它把一組小的服務互相協調、互相配合,并且 完成功能。每個服務運行在其獨立的進程中,服務與服務間采用輕量級的通信機制互相協作(通常是基 于HTTP 協議的RESTfulAPI )。每個服務都圍繞著具體業務進行構建,并且能夠被獨立的部署到生產環境
1.3)微服務的優點
①:每個服務足夠內聚,足夠小,代碼容易理解這樣能聚焦一個指定的業務功能或業務需求(職責單 一)
②:開發簡單、開發效率提高,一個服務可能就是專一的只干一件事,微服務能夠被小團隊單獨開發,這 個小團隊是 2 到 5 人的開發人員組成。
③:微服務能使用不同的語言開發。
④:易于和第三方集成,微服務允許容易且靈活的方式集成自動部署,通過持續集成工具,如 Jenkins,Hudson,bamboo。
⑤:微服務只是業務邏輯的代碼,不會和 HTML,CSS或其他界面組件混合。
⑥:每個微服務都有自己的存儲能力,可以有自己的數據庫。也可以有統一數據庫。
1.4)微服務的缺點
①開發人員要處理分布式系統的復雜性(分布式事物)
②:多服務運維難度,隨著服務的增加,運維的壓力也在增大
③:系統部署依賴
④:服務間通信成本
⑤:數據一致性
二、springboot的認識
2.1)優點
①、springboot 能在最小的阻力下,自動配置消除了傳統Spring應用程序里的很多樣板配置,不用在spring的配置上花更多的功夫,甚至完全不用配置,更加專注于應用程序的功能,spring雖然在2.5加入了注解掃描,但是還是需要少量的spring的配置。
②、起步依賴,需要什么功能,自動引入相關的類庫。提供眾多的起步依賴,降低了項目依賴的復雜度。根據依賴的傳遞,面對版本沖突和兼容的問題,方便管理
③、內嵌tomcat,jetty容器,不用打war包,放到容器里執行,直接java -jar xx.jar可啟動項目
④、Actuator 檢視應用程序狀態(健康檢查)
2.2)缺點
①、springboot內部對jsp的支持并不是特別理想,而springboot推薦的視圖是Thymeleaf
②、雖然springboot減少了一些配置,但實際上是使用了更多的注解在相應的配置類上,這樣導致相對于之前更難的理解出組件的依賴關系和加載的原理
③、starter類似一個可拔插的插件,對maven的依賴做了封裝,對版本做了控制,對于初學者想要了解原理提升了難度
三、springboot構建項目需要引入的依賴
3.1)引入spring-boot-starter-parent,spring-boot-starter-parent中的spring-boot-dependencies是來控制版本的,我們引入里面有的依賴不需要寫版本號,如果沒有自然要寫版本號
3.2)spring-boot-starter-web 里面依賴了spring-web和webmvc等web開發需要的一些依賴
上述就是小編為大家分享的springboot微服務的開發利器是什么了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。