日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁(yè) > 科技  > 軟件

實(shí)現(xiàn)Eureka服務(wù)注冊(cè)和服務(wù)發(fā)現(xiàn),你學(xué)會(huì)了嗎?

來源: 責(zé)編: 時(shí)間:2023-11-28 09:36:36 287觀看
導(dǎo)讀分布式在大型開發(fā)項(xiàng)目中通常使用分布式服務(wù)來根據(jù)項(xiàng)目中不同的功能劃分為幾個(gè)不通的模塊。比如在一個(gè)商城系統(tǒng)中,通常會(huì)把用戶服務(wù)、下單服務(wù)、商品推薦服務(wù)分散到幾個(gè)模塊中,如果在下單服務(wù)中需要獲取用戶的信息,這時(shí)候

分布式

在大型開發(fā)項(xiàng)目中通常使用分布式服務(wù)來根據(jù)項(xiàng)目中不同的功能劃分為幾個(gè)不通的模塊。iEh28資訊網(wǎng)——每日最新資訊28at.com

比如在一個(gè)商城系統(tǒng)中,通常會(huì)把用戶服務(wù)、下單服務(wù)、商品推薦服務(wù)分散到幾個(gè)模塊中,如果在下單服務(wù)中需要獲取用戶的信息,這時(shí)候就在代碼內(nèi)部調(diào)用用戶服務(wù)的接口即可。這樣一個(gè)過程就是分布式的基本概念。iEh28資訊網(wǎng)——每日最新資訊28at.com

Spring Cloud

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的開發(fā)便利性巧妙地簡(jiǎn)化了分布式系統(tǒng)基礎(chǔ)設(shè)施的開發(fā),如服務(wù)發(fā)現(xiàn)注冊(cè)、配置中心、消息總線、負(fù)載均衡、斷路器、數(shù)據(jù)監(jiān)控等,都可以用Spring Boot的開發(fā)風(fēng)格做到一鍵啟動(dòng)和部署。Spring Cloud并沒有重復(fù)制造輪子,它只是將各家公司開發(fā)的比較成熟、經(jīng)得起實(shí)際考驗(yàn)的服務(wù)框架組合起來,通過Spring Boot風(fēng)格進(jìn)行再封裝屏蔽掉了復(fù)雜的配置和實(shí)現(xiàn)原理,最終給開發(fā)者留出了一套簡(jiǎn)單易懂、易部署和易維護(hù)的分布式系統(tǒng)開發(fā)工具包。iEh28資訊網(wǎng)——每日最新資訊28at.com

--以上內(nèi)容來自百度百科。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

來自官網(wǎng)列舉的主要項(xiàng)目iEh28資訊網(wǎng)——每日最新資訊28at.com

所以,Spring Cloud是一款主流的分布式服務(wù)框架,提供了服務(wù)注冊(cè)與調(diào)用,統(tǒng)一配置管理,統(tǒng)一網(wǎng)關(guān)路由,服務(wù)鏈路監(jiān)控等功能。并且在遠(yuǎn)程調(diào)用是支持Feign(HTTP)協(xié)議。iEh28資訊網(wǎng)——每日最新資訊28at.com

服務(wù)遠(yuǎn)程調(diào)用

3.1 創(chuàng)建兩個(gè)項(xiàng)目

創(chuàng)建兩個(gè)項(xiàng)目模擬分布式的場(chǎng)景,分別是userService和orderService,這兩個(gè)服務(wù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)不在同一個(gè)庫(kù)中,在userService項(xiàng)目中有一個(gè)接口是根據(jù)user表的ID查詢user對(duì)象;iEh28資訊網(wǎng)——每日最新資訊28at.com

同樣的,orderService項(xiàng)目中有一個(gè)接口是根據(jù)order表的ID查詢order信息,在一條信息中包含了單價(jià),數(shù)量,總價(jià)和用戶的ID。iEh28資訊網(wǎng)——每日最新資訊28at.com

這兩個(gè)個(gè)項(xiàng)目布在了同一個(gè)大的項(xiàng)目中。現(xiàn)在有一個(gè)功能需求是通過使用orderService的接口查詢order信息并同時(shí)獲得這個(gè)訂單對(duì)應(yīng)的用戶信息。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

3.2 遠(yuǎn)程調(diào)用

首先需要?jiǎng)?chuàng)建一個(gè)RestTemplate對(duì)象,這個(gè)對(duì)象功能能簡(jiǎn)單,就是用來發(fā)送HTTP請(qǐng)求,所以可以在項(xiàng)目的配置類中創(chuàng)建這么一個(gè)對(duì)象,然后在Controller層中注入。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

這樣就完成了一次遠(yuǎn)程調(diào)用了。iEh28資訊網(wǎng)——每日最新資訊28at.com

使用Postman測(cè)試一下,理論上是要返回一個(gè)response對(duì)象,response對(duì)象包含了user對(duì)象和order對(duì)象。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

Eureka服務(wù)搭建

在上面的遠(yuǎn)程調(diào)用的例子中,有許多的不足,比如訪問的url信息是寫死在代碼中的,后期部署的時(shí)候要再專門修改這樣是不現(xiàn)實(shí)的。iEh28資訊網(wǎng)——每日最新資訊28at.com

Eureka服務(wù)發(fā)現(xiàn)就相當(dāng)于是一個(gè)專門獲取項(xiàng)目中所有接口的程序。所以需要先創(chuàng)建一個(gè)Spring boot項(xiàng)目,然后把這個(gè)項(xiàng)目當(dāng)作Eureka的server。iEh28資訊網(wǎng)——每日最新資訊28at.com

4.1 首先在Eureka_Server的Maven中導(dǎo)入依賴

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency>

4.2 接著在啟動(dòng)類添加@EnableEurekaServer注解

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

4.3 在配置文件中配置Eureka服務(wù)的端口和應(yīng)用名稱

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

驗(yàn)證是否成功只需要在瀏覽器上輸入設(shè)置的網(wǎng)址,看能否進(jìn)入頁(yè)面即可。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

Eureka服務(wù)注冊(cè)

5.1 在orderservice和userservice項(xiàng)目中分別引入Eureka依賴信息

注:這里導(dǎo)入的是client依賴。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

5.2 在userservice和orderservice配置Eureka的配置信息

注:與4.3的樣式一致。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

5.3 訪問eureka地址查看這倆個(gè)新注冊(cè)的服務(wù)iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

可以發(fā)現(xiàn)服務(wù)都注冊(cè)在eureka上了。iEh28資訊網(wǎng)——每日最新資訊28at.com

Eureka服務(wù)發(fā)現(xiàn)

6.1 把消費(fèi)者的調(diào)用鏈接中的ip和端口信息換成注冊(cè)在Eureka的服務(wù)名

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

6.2 在消費(fèi)者的配置類的RestTemplate上添加@LoadBalanced注解

注:這里的消費(fèi)者當(dāng)然是orderservice。iEh28資訊網(wǎng)——每日最新資訊28at.com

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

6.3 再測(cè)試一次程序

圖片圖片iEh28資訊網(wǎng)——每日最新資訊28at.com

可見是成功調(diào)用了userservice的接口。iEh28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-34659-0.html實(shí)現(xiàn)Eureka服務(wù)注冊(cè)和服務(wù)發(fā)現(xiàn),你學(xué)會(huì)了嗎?

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 100行代碼實(shí)現(xiàn)審計(jì)日志中間件

下一篇: Display和Visibility的區(qū)別,你了解了嗎?

標(biāo)簽:
  • 熱門焦點(diǎn)
Top 主站蜘蛛池模板: 融水| 莱西市| 崇仁县| 益阳市| 马尔康县| 松潘县| 忻城县| 井冈山市| 克什克腾旗| 青阳县| 融水| 长垣县| 嘉黎县| 慈溪市| 普定县| 察雅县| 芷江| 股票| 沽源县| 卢湾区| 鹤岗市| 徐闻县| 吴川市| 灵宝市| 龙海市| 金山区| 深水埗区| 平陆县| 麦盖提县| 贵南县| 恩平市| 浦江县| 邯郸县| 华宁县| 永安市| 四会市| 灵寿县| 博兴县| 大关县| 维西| 盱眙县|