SpringCloud(二) Spring Cloud組件的完整demo 和部署運行

代碼託管於github:https://github.com/LoveIpo/spring-cloud-demo.gitgit

1、前言

項目轉型,整個項目要使用如今比較熱的微服務架構。老闆讓我整一個spring cloud 的簡單demo出來,在網上不多有比較全的demo。通過幾回熬夜,終於完成了spring cloud 組件部署的demo,而且能順利運行。深夜發文,便於分享和查閱。github

2、環境準備

安裝STS做爲spring cloud開發工具
url: https://spring.io/tools/sts/all/spring

3、部署spring cloud 的各個組件

3.1 部署Eureka Server
最早啓動的是eureka-server,而且你須要在整個測試過程當中保持它的啓動狀態,由於它是註冊中心,大多數服務必須依賴於它才能實現必要的功能。後端

  • 導入eureka-server的maven項目。

圖片描述

  • 運行Eureka Server
    圖片描述
  • 若是部署成功訪問Eureka server的url:http://localhost:7071/

3.2 部署微服務service-A(因爲沒有涉及到項目,因此簡單實現參數相加)api

  • 導入service-A的maven項目。
  • 運行service-A
  • 若是部署成功訪問service-A 的url:http://localhost:2222/add?a=111&b=113

3.3 部署微服務service-B(簡單實現參數相減)瀏覽器

  • 導入service-B2的maven項目。
  • 運行service-B2
    圖片描述
  • 若是部署成功訪問service-B的url:http://localhost:7078/sub?a=111&b=113
  • 微服務B調用微服務A的url:http://localhost:7078/testServiceA?a=111&b=113
    由上面兩個url能夠看出端口號都是service-B的。

3.4 部署zuul(Zuul至關因而Web網站後端全部請求的前門,詳細的實現能夠看code)架構

  • 導入zuul的maven項目。
  • 運行zuul
    圖片描述
  • zuul的端口號是:7073
    經過zuul訪問服務A的url:http://localhost:7073/api-a/add?a=111&b=113。經過zuul訪問服務B的url:http://localhost:7073/api-b/sub?a=111&b=113

3.5 部署ribbon(負載均衡)
在這個demo中只是對服務B進行負載均衡負載均衡

    • 在部署ribbon以前,先把service-B3 部署上,步驟跟部署service-B2是同樣的。主要是使得服務B生成兩個實例,即service-B有兩個不一樣的端口號。能夠在eureka-server界面上看到效果。
    • 導入ribbon的maven項目。
    • 運行ribbon。
      圖片描述
    • 運行ribbon的端口是:7072.
      在瀏覽器中經過ribbon訪問服務B的url是:http://localhost:7072/sub?a=111&b=113
      當你刷新瀏覽器的時候,能夠看到服務B的端口號在不停的變化,就說明ribbon 對服務B執行了負載均衡。效果如圖

    圖片描述

    夜深人靜。。。其餘組件後續更新。有疑問能夠留言。maven

    相關文章
    相關標籤/搜索