在《服務(wù)注冊(cè)&服務(wù)提供者》這一篇可能學(xué)習(xí)了這么開(kāi)發(fā)一個(gè)服務(wù)提供者,在生成上服務(wù)提供者通常是部署在內(nèi)網(wǎng)上,即是服務(wù)提供者所在的服務(wù)器是與互聯(lián)網(wǎng)完全隔離的。這篇說(shuō)下服務(wù)發(fā)現(xiàn)(服務(wù)消費(fèi)者),通常服務(wù)消費(fèi)者是部署在與互聯(lián)網(wǎng)聯(lián)通的服務(wù)器上,提供restful接口給H5和App調(diào)用。
服務(wù)消費(fèi)者 :Service Consumer本質(zhì)上也是一個(gè)Eureka Client。它啟動(dòng)后會(huì)從Eureka Server上獲取所有實(shí)例的注冊(cè)信息,包括IP地址、端口等,并緩存到本地。這些信息默認(rèn)每30秒更新一次。如果與Eureka Server通信中斷或者Eureka Server宕機(jī),Service Consumer仍然可以通過(guò)本地緩存與Service Provider通信。
1、 新建項(xiàng)目sc-eureka-client-consumer-ribbon,對(duì)用的pom.xml文件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>spring-cloud</groupId>
<artifactId>sc-eureka-client-consumer-ribbon</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>sc-eureka-client-consumer-ribbon</name>
<url>http://maven.apache.org</url>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
</parent>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.RELEASE</version>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>2.0.1.RELEASE</version>
</dependency>
<!-- <dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
<version>1.4.5.RELEASE</version>
</dependency> -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
<version>2.0.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.0.4.RELEASE</version>
</dependency>
</dependencies>
</project>
備注:spring cloud 2.x推薦使用spring-cloud-starter-netflix-ribbon,而且spring-cloud-starter-ribbon已經(jīng)被標(biāo)志為過(guò)期
2、 新建類ConsumerApplication.java,spring boot啟動(dòng)類
package sc.consumer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
@SpringBootApplication
@EnableEurekaClient
public class ConsumerApplication {
public static void main(String[] args) {
SpringApplication.run(ConsumerApplication.class, args);
}
}
3、 創(chuàng)建類RestTemplateConfig.java,該類是一個(gè)配置類,主要返回org.springframework.web.client.RestTemplate對(duì)象
package sc.consumer;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;
@Configuration
public class RestTemplateConfig {
@Bean
@LoadBalanced
public RestTemplate getRestTemplate(){
return new RestTemplate();
}
}
4、 創(chuàng)建配置文件bootstrap.yml和application.yml;具體內(nèi)容參考源碼
5、 其他類接口如下
6、 啟動(dòng)注冊(cè)中心sc-eureka-server和服務(wù)提供者sc-eureka-client-provider,具體請(qǐng)參考《eureka注冊(cè)中心單機(jī)》和《服務(wù)注冊(cè)&服務(wù)提供者》
7、 啟動(dòng)服務(wù)消費(fèi)者sc-eureka-client-consumer-ribbon,并驗(yàn)證是否啟動(dòng)成功
也可以查看日志是否有沒(méi)有報(bào)錯(cuò)
8、 訪問(wèn)相關(guān)接口
查詢:
http://127.0.0.1:5600/cli/user/getUser/4
列表:
http://127.0.0.1:5600/cli/user/listUser
添加:
http://127.0.0.1:5600/cli/user/addUser
更新:
http://127.0.0.1:5600/cli/user/updateUser
刪除:
http://127.0.0.1:5600/cli/user/deleteUser/6
https://gitee.com/hjj520/spring-cloud-2.x/tree/master/sc-eureka-client-consumer-ribbon
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)頁(yè)題目:7、服務(wù)發(fā)現(xiàn)&服務(wù)消費(fèi)者Ribbon-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://muchs.cn/article8/pgiip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、軟件開(kāi)發(fā)、企業(yè)建站、定制開(kāi)發(fā)、網(wǎng)站設(shè)計(jì)、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容