001 做一個合格的噴子---springcloud起步
阿新 • • 發佈:2018-10-06
span manage 過程 all pom -s 環境 編寫 import
一 .概述
本次開始springcloud的學習,參考的資料有springcloud微服務實踐--翟永超和周立的springcloud與docker實踐.國內的書籍不多,但是這兩本都算不錯,覆蓋的內容也是比較多的,參照官方文檔就開始本次的初始化.
本次使用周立老師的書籍作為整體的演進方式.
二 .微服務概述
微服務的出現時一個演進的過程,我們先回想一下我們最初的架構的內容.
單體應用,我們最初的項目就是一個war包,這就是一個all in one的單體工程.在單體工程之中,我們的部署和開發都算簡單,
但是當項目不斷演進的時候,就會出現大量的問題:
[1]復雜程度太高了,畢竟所有的內容都放在了一處,一旦修改,我們就需要重新部署整個項目.
[2]性能不好,我們只能通過不斷的打補丁來完成項目的性能提升,但是性能的終點很快就會到達.
在些問題在微服務之中都是比較容易解決的,但是微服務之中也存在大量的問題.
[1]運維的成本大大提升,畢竟現在需要維護一系列的服務.
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Dalston.SR5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
[2]分布式環境下,技術的難度和復雜度提升.
[3]微服務的粒度:這個是最為關鍵的一點,太細,我們的業務代碼幾乎無法編寫,因為我們總是調用相似的服務.
太粗,我們就會生成大量相似的微服務.
三.微服務框架
我們本次使用的框架就是springcloud來完成我們的微服務的實踐,本身使用springloud是比較簡單的,但是難點在於組件太多,名詞太多,考慮的問題太多.
本次就選用最為常見的組件的學習.
我們需要做一個版本問題的更正.
本次使用springboot1.5.9,加上springcloud的D-SR5來構建項目.具體的maven信息如下:
001 做一個合格的噴子---springcloud起步