偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

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

開發(fā) 前端
同樣的,orderService項目中有一個接口是根據(jù)order表的ID查詢order信息,在一條信息中包含了單價,數(shù)量,總價和用戶的ID。

分布式

在大型開發(fā)項目中通常使用分布式服務(wù)來根據(jù)項目中不同的功能劃分為幾個不通的模塊。

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

Spring Cloud

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

--以上內(nèi)容來自百度百科。

圖片圖片

來自官網(wǎng)列舉的主要項目

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

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

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

創(chuàng)建兩個項目模擬分布式的場景,分別是userService和orderService,這兩個服務(wù)對應(yīng)的數(shù)據(jù)庫不在同一個庫中,在userService項目中有一個接口是根據(jù)user表的ID查詢user對象;

同樣的,orderService項目中有一個接口是根據(jù)order表的ID查詢order信息,在一條信息中包含了單價,數(shù)量,總價和用戶的ID。

這兩個個項目布在了同一個大的項目中?,F(xiàn)在有一個功能需求是通過使用orderService的接口查詢order信息并同時獲得這個訂單對應(yīng)的用戶信息。

圖片圖片

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

首先需要創(chuàng)建一個RestTemplate對象,這個對象功能能簡單,就是用來發(fā)送HTTP請求,所以可以在項目的配置類中創(chuàng)建這么一個對象,然后在Controller層中注入。

圖片圖片

圖片圖片

這樣就完成了一次遠(yuǎn)程調(diào)用了。

使用Postman測試一下,理論上是要返回一個response對象,response對象包含了user對象和order對象。

圖片圖片

Eureka服務(wù)搭建

在上面的遠(yuǎn)程調(diào)用的例子中,有許多的不足,比如訪問的url信息是寫死在代碼中的,后期部署的時候要再專門修改這樣是不現(xiàn)實的。

Eureka服務(wù)發(fā)現(xiàn)就相當(dāng)于是一個專門獲取項目中所有接口的程序。所以需要先創(chuàng)建一個Spring boot項目,然后把這個項目當(dāng)作Eureka的server。

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

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

4.2 接著在啟動類添加@EnableEurekaServer注解

圖片圖片

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

圖片圖片

驗證是否成功只需要在瀏覽器上輸入設(shè)置的網(wǎng)址,看能否進(jìn)入頁面即可。

圖片圖片

Eureka服務(wù)注冊

5.1 在orderservice和userservice項目中分別引入Eureka依賴信息

注:這里導(dǎo)入的是client依賴。

圖片圖片

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

注:與4.3的樣式一致。

圖片圖片

5.3 訪問eureka地址查看這倆個新注冊的服務(wù)

圖片圖片

可以發(fā)現(xiàn)服務(wù)都注冊在eureka上了。

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

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

圖片圖片

6.2 在消費者的配置類的RestTemplate上添加@LoadBalanced注解

注:這里的消費者當(dāng)然是orderservice。

圖片圖片

6.3 再測試一次程序

圖片圖片

可見是成功調(diào)用了userservice的接口。

責(zé)任編輯:武曉燕 來源: IT那活兒
相關(guān)推薦

2022-06-17 12:05:25

微服務(wù)注冊

2024-05-29 09:20:41

2022-06-16 07:50:35

數(shù)據(jù)結(jié)構(gòu)鏈表

2024-01-30 18:29:29

微服務(wù)架構(gòu)Ingress

2019-09-19 09:03:13

Docker負(fù)載均衡服務(wù)

2024-07-29 10:35:44

KubernetesCSI存儲

2024-01-29 00:41:14

2024-01-19 08:25:38

死鎖Java通信

2024-02-04 00:00:00

Effect數(shù)據(jù)組件

2023-07-26 13:11:21

ChatGPT平臺工具

2023-01-10 08:43:15

定義DDD架構(gòu)

2023-08-01 12:51:18

WebGPT機(jī)器學(xué)習(xí)模型

2024-01-02 12:05:26

Java并發(fā)編程

2021-04-20 17:20:59

SpringColud EurekaNetflix開發(fā)

2024-08-12 08:12:38

2024-03-12 08:37:32

asyncawaitJavaScript

2023-12-07 12:29:49

Nginx負(fù)載均衡策略

2024-10-08 08:11:39

2023-10-10 11:04:11

Rust難點內(nèi)存

2024-05-06 00:00:00

InnoDBView隔離
點贊
收藏

51CTO技術(shù)棧公眾號