SpringCloud入門02---微服務-提供者與消費者

一.提供者

1.新建一個Boot項目並導入如下依賴
在這裏插入圖片描述
2.配置
2.1啓動類配置

@SpringBootApplication
@EnableEurekaClient
public class Demo04Application {

    public static void main(String[] args) {
        SpringApplication.run(Demo04Application.class, args);
    }

}

2.2.application.properties文件配置


#配置端口,端口配置在同一個eureka中必須是唯一的否則會出現端口占用現象
server.port=8123
#配置服務名稱,服務名稱可以任意定義,但是在同一個eureka中必須是唯一的
spring.application.name=spring-cloud-demo01
#將此服務配置到eureka中此鏈接就是【SpringCloud入門02中所配置的eureka訪問地址】
eureka.client.serviceUrl.defaultZone=http://localhost:8763/eureka/

3.運行此項目
運行後如果可以在eureka中看到服務就說明配置成功如圖
在這裏插入圖片描述
4.準備
爲了下一步的消費者驗證在啓動類中編寫如下

@SpringBootApplication
@EnableEurekaClient
@RestController
public class Demo04Application {

    public static void main(String[] args) {
        SpringApplication.run(Demo04Application.class, args);
    }


    @GetMapping("/test/{str}")
    public String test(@PathVariable("str")String str){
        return "你好我是提供者,我們已建立溝通,驗證信息爲:"+str;
    }
}

二.消費者

消費者與提供者同是微服務,只不過根據他們的作用與職責不同有着不同的別稱,提供者說白了就是提供信息或數據的微服務,比如提供數據庫信息,第三方接口信息等,而消費者則是對提供者所提供的信息數據等做邏輯操作或者業務操作。
1.項目配置
1.1新建一個springBoot項目
並導入相關依賴
在這裏插入圖片描述
1.2啓動類配置

@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients
public class Demo05Application {

    public static void main(String[] args) {
        SpringApplication.run(Demo05Application.class, args);
    }

}

1.3application.properties配置

#配置端口
server.port=8124
#配置服務名稱
spring.application.name=spring-cloud-demo06
#將此服務配置到eureka中
eureka.client.serviceUrl.defaultZone=http://localhost:8763/eureka/

#配置Feign
#連接超時
feign.client.config.feignName.connect-timeout=5000
#讀取超時
feign.client.config.feignName.read-timeout=5000

1.4編寫Service代碼

@FeignClient("spring-cloud-demo04")//此值要與eureka中的名稱對應
public interface Test {

    @GetMapping("/test/{str}")//此路徑也要與要訪問的接口相對應
    String test(@PathVariable("str")String str);

}

1.5編寫controller代碼
本人比較懶,就在啓動類中編寫controller代碼進行測試

@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients
@RestController
public class Demo05Application {

    public static void main(String[] args) {
        SpringApplication.run(Demo05Application.class, args);
    }

    @Autowired(required = false)
    private Test test;//1.4中的Service類

        @GetMapping("show/{str}")
        public String show(@PathVariable("str") String str){
        return  test.test(str);
        }
        
}

2.測試
2.1Eureka測試
打開Eureka頁面看有沒有新的服務背搜索到如圖
在這裏插入圖片描述
可以看出兩個服務都被註冊到Eureka中了
2.2接口訪問測試
訪問消費者的接口看是否能獲取提供者提供的信息如圖
在這裏插入圖片描述
根據上圖可以看出消費者已經獲取到提供者所提供的信息

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章