基於consul的服務註冊 含踩坑過程

2021-10-02 15:02:51 字數 2878 閱讀 6740

在本地的乙個案例中進行修改

修改微服務的相關pom檔案

修改每個微服務的pom檔案,新增springcloud提供的基於consul的依賴

<

dependency

>

<

groupid

>org.springframework.cloud

groupid

>

<

artifactid

>spring-cloud-starter-consul-discovery

artifactid

>

dependency

>

<

dependency

>

<

groupid

>org.springframework.boot

groupid

>

<

artifactid

>spring-boot-starter-actuator

artifactid

>

dependency

>

注:由於我之前的**是註冊到eureka中,把配置註解要刪了,pom的依賴還在,啟動直接報錯,還是要去掉的

其中 spring-cloud-starter-consul-discovery 是springcloud提供的對consul支援的相關依賴。

spring-boot-starter-actuator 適用於完成心跳檢測響應的相關依賴。

配置服務註冊

server:

port: 9001 #埠

spring:

name: service-product #服務名稱

datasource:

driver-class-name: com.mysql.jdbc.driver

url: jdbc:mysql://localhost:3306/shop?useunicode=true

&characterencoding=utf8&servertimezone

=utc

username: root

password: 123456

jpa:

database: mysql

show-sql: true

open-in-view: true

###開始配置consul的服務註冊

cloud:

consul:

host: 192.168.180.137 #consul伺服器的主機位址

port: 8500 #consul伺服器的ip位址

discovery:

#是否需要註冊

register: true

#註冊的例項id (唯一標誌)

#服務的名稱

#服務的請求埠

port: $

#指定開啟ip位址註冊

prefer-ip-address: true

#當前服務的請求ip

ip-address: $

server:

port: 9002 #埠

spring:

name: service-order #服務名稱

datasource:

driver-class-name: com.mysql.jdbc.driver

url: jdbc:mysql://localhost:3306/shop?useunicode=true

&characterencoding=utf8&servertimezone

=utc

username: root

password: 123456

jpa:

database: mysql

show-sql: true

open-in-view: true

###開始配置consul的服務註冊

cloud:

consul:

host: 192.168.180.137 #consul伺服器的主機位址

port: 8500 #consul伺服器的ip位址

discovery:

#是否需要註冊

register: true

#註冊的例項id (唯一標誌)

#服務的名稱

#服務的請求埠

port: $

#指定開啟ip位址註冊

prefer-ip-address: true

#當前服務的請求ip

ip-address: $

在控制台中檢視服務列表

開啟consulserver的管理控制台,可以發現三個微服務已經全部註冊到consul中了。

進行測試:

發現沒有問題。

由於第一次部署實在阿里雲上的,但是在服務檢查的時候一直顯示連線超時,可能網路不帶好,換成自己的虛擬機器就沒有問題。如下圖:

基於consul的服務註冊 含踩坑過程

在本地的乙個案例中進行修改 修改微服務的相關pom檔案 修改每個微服務的pom檔案,新增springcloud提供的基於consul的依賴 dependency groupid org.springframework.cloud groupid artifactid spring cloud sta...

consul服務註冊

這是定義服務的根級引數。您可以指定引數來配置服務。範圍描述 預設必需的 id 指定服務 id 的字串值。如果未指定,name將使用該字段的值。每個節點的服務必須具有唯一的 id,因此如果預設值name會與其他服務衝突,您應該指定唯一的值。name引數值 可選的name 指定服務的名稱。如果id未指定...

11 基於consul的服務註冊與發現

springcloud提供的基於consul的服務發現 org.springframework.cloud groupid spring cloud starter consul discovery artifactid dependency actuator用於心跳檢查 org.springfra...