Spring Cloud 5分钟搭建教程(附上一个分布式日志系统项目作为参考) - 推荐
http://blog.csdn.net/lc0817/article/details/53266212/
?
https://github.com/leoChaoGlut/log-sys
上面是我基于Spring Cloud ,Spring Boot 和 Docker 搭建的一個(gè)分布式日志系統(tǒng).
目前已在我司使用. 想要學(xué)習(xí)Spring Cloud, Spring Boot以及Spring 全家桶的童鞋,可以參考學(xué)習(xí),如果覺得好,star 一下吧~
?
<<<< 20170602 <<<<?
新增Spring Cloud [ Bus, Sleuth, Config, Stream ]教程:
Github:?https://github.com/leoChaoGlut/spring-cloud-tutorial
>>>>?20170602 >>>>?
?
<<<< 20170608 <<<<?
Ribbon源碼解析及常見問題:?http://blog.csdn.net/lc0817/article/details/72886721
>>>>?20170608 >>>>?
1.前言:
1.1.以下內(nèi)容是我通過閱讀官方文檔,并成功實(shí)踐后的經(jīng)驗(yàn)總結(jié),希望能幫助你更快地理解和使用Spring Cloud.?
1.2.默認(rèn)讀者已經(jīng)熟練掌握Spring 全家桶,Spring Boot和注解開發(fā).
1.3.陸續(xù)更新
?
2.開發(fā)環(huán)境:?@Deprecated
2.1.開發(fā)工具:idea
2.2.開發(fā)環(huán)境:jdk1.7
2.3.Spring版本:
2.3.1.Spring Boot :1.4.0 release
2.3.2.Spring Cloud :?Camden SR2
?
3.demo:(獻(xiàn)給急于速成的各位大兄弟): demo地址:?https://github.com/leoChaoGlut/spring-cloud-demo
3.1.服務(wù)注冊(cè)demo:
3.1.1.創(chuàng)建工程模塊,如圖所示
3.1.2.將官方提供的maven依賴,加入pom.
[html]?view plain?copy ?3.1.3.如圖步驟,完成Discovery
?
3.1.4.如圖步驟完成Service0,Service1類似
3.1.5.簡(jiǎn)單到爆炸有沒有...........,接下來先啟動(dòng)Discovery,然后啟動(dòng)Service0和Service1
3.1.6.打開瀏覽器,訪問 localhost:8080 ,8080是Discovery里配置的端口號(hào).一切順利的話,可以看到:
3.1.7.已經(jīng)成功注冊(cè)了service0,service1兩個(gè)服務(wù)
3.2.網(wǎng)關(guān)demo: 光是注冊(cè)了服務(wù)還不行,這里可以再配一個(gè)網(wǎng)關(guān),讓服務(wù)調(diào)用有統(tǒng)一的入口.?
3.2.1.通過上圖配置后,首先啟動(dòng)Discovery,其次的服務(wù)和網(wǎng)關(guān)啟動(dòng)順序隨意.通過訪問localhost:8083/service0/service0,即可看到,gateway幫我們轉(zhuǎn)發(fā)了請(qǐng)求.
?
3.3.Feign:一個(gè)可以把遠(yuǎn)程服務(wù)提供方的 rest 接口變成本地方法調(diào)用的Spring Cloud組件
舉個(gè)栗子:
現(xiàn)在有2個(gè)服務(wù),service0, service1
service0提供了一個(gè)test接口,
那么這時(shí)候,如果service1需要的調(diào)用service0,除了通過網(wǎng)關(guān)(zuul)調(diào)用,還可以使用Feign,來把service0的遠(yuǎn)程接口,變?yōu)楸镜胤椒ㄕ{(diào)用.如圖:
4.feign?+ ribbon + hystrix
簡(jiǎn)介:
hystrix: 以切面為原理,可以在不入侵業(yè)務(wù)代碼的情況下,給方法加上超時(shí)等指標(biāo),并且可以在超出設(shè)置的指標(biāo)后,調(diào)用指定的fallback方法,進(jìn)行失敗回調(diào)處理.
ribbon: 客戶端負(fù)載均衡, 我曾經(jīng)也寫了一個(gè)類似的東西(https://github.com/leoChaoGlut/ServiceDIscoveryAndRegistry/tree/master/doc),不過后來發(fā)現(xiàn)spring cloud已經(jīng)有成熟的,現(xiàn)成的常用組件,所以就放棄了.哈哈.... 老式的,無注冊(cè)中心的服務(wù)調(diào)用,是通過url來實(shí)現(xiàn)的,但是ribbon可以讓我們只需要提供服務(wù)名,就可以調(diào)用到多實(shí)例的服務(wù),并且在客戶端做一個(gè)負(fù)載分發(fā),減輕服務(wù)端負(fù)載的壓力.
feign: 給你以Http的形式,帶來RPC般的體驗(yàn).
?
?
認(rèn)真看圖和代碼,即可快速上手 feign + ribbon + hystrix 配置
細(xì)看spring cloud, feign,ribbon,hystrix的官方文檔,加上源碼的閱讀,即可掌握如何使用spring cloud 配置 這三個(gè)組件.
?
5.分布式應(yīng)用日志追蹤: spring cloud sleuth:
http://blog.csdn.net/lc0817/article/details/72829935
6.分布式配置中心: Spring Cloud Config
http://blog.csdn.net/lc0817/article/details/72833007
7.消息總線: Spring Cloud Bus:
http://blog.csdn.net/lc0817/article/details/72836236
8.Netflix 基本組件:Feign Ribbon Hystrix 詳細(xì)整合
http://blog.csdn.net/lc0817/article/details/72875195
9.流處理:Spring Cloud Stream
http://blog.csdn.net/lc0817/article/details/72956321
總結(jié)
以上是生活随笔為你收集整理的Spring Cloud 5分钟搭建教程(附上一个分布式日志系统项目作为参考) - 推荐的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做梦梦到鞋坏了是什么意思
- 下一篇: Windows平台下kafka环境的搭建