1. 程式人生 > >001 做一個合格的噴子---springcloud起步

001 做一個合格的噴子---springcloud起步

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起步