springboot版本 : 2.0.3.release
1.8
finchley.sr1
org.springframework.boot
spring-boot-starter-actuator
org.springframework.cloud
spring-cloud-starter-consul-discovery
org.springframework.cloud
spring-cloud-dependencies
$pom
import
server:
port: 8088
spring:
name: cn-consul-test
cloud:
consul:
discovery:
prefer-ip-address: true
host: 10.130.131.39
port: 8500
2.指定例項id(instance-id),規則中加入ip:
3.自定義例項id,此方法會在生成例項id後,再生成自定義例項id。
import com.ecwid.consul.v1.consulclient;
import org.springframework.cloud.consul.discovery.consuldiscoveryproperties;
import org.springframework.cloud.consul.discovery.heartbeatproperties;
import org.springframework.cloud.consul.discovery.ttlscheduler;
import org.springframework.cloud.consul.serviceregistry.consulregistration;
import org.springframework.cloud.consul.serviceregistry.consulserviceregistry;
/***
** @author 0.0
* @since 2020-08-30 11:23
*/public class myconsulserviceregistry extends consulserviceregistry
@override
public void register(consulregistration reg)
}
import com.ecwid.consul.v1.consulclient;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.cloud.consul.discovery.consuldiscoveryproperties;
import org.springframework.cloud.consul.discovery.heartbeatproperties;
import org.springframework.cloud.consul.discovery.ttlscheduler;
import org.springframework.cloud.consul.serviceregistry.consulserviceregistry;
import org.springframework.context.annotation.bean;
import org.springframework.context.annotation.configuration;
/***
** @author 0.0
* @since 2020-08-30 11:26
*/@configuration
public class myconsulserviceregistryconfig
}
首先獲取節點id
生成刪除節點的請求:
curl -x put
如:curl -x put
伺服器上執行請求
和zookeeper一樣,服務註冊是為了動態獲取服務提供者並暴露給服務消費者(不同的是zookeeper+dubbo註冊的服務更詳細),節點動態擴充縮減增加了領用靈活性。
consul作為服務註冊中間元件,接收並記錄服務提供者資訊(註冊服務應用名,主機ip+埠等),而服務消費者則從consul獲取服務提供者資訊動態生成呼叫介面呼叫服務,形成基本的微服務呼叫。
應用使用過程中consul掛了,消費者還能呼叫服務提供者嗎?可以!
consul提供的是存活的服務提供者列表,而消費者呼叫服務是根據服務提供者列表生成呼叫介面,本地也會快取從consul獲取到的服務提供者列表,一旦consul掛了,意味著消費者本地的服務提供者列表快取無法再被更新了
服務提供者和消費者怎麼區分的?不註冊服務則只能做消費者,註冊服務則即時服務提供者,也是服務消費者
spring.cloud.consul.discovery.register=false
Jupyter Notebook啟用conda環境
windows環境配置如下 1.開啟預設conda環境 root c users username 2.選擇要在jupyter notebook中啟用的env,並啟用 root style transfer d programdata miniconda3 envs style transfer r...
javasript中var let和const區別
let和const都是es5,es6新版本的js語言規範出來的定義,在這以前定義乙個變數只能用var。let和const都是為了彌補var的一些缺陷而新設計出來的。簡單來說是 let是修復了var的作用域的一些bug,變的更加好用。let是更好的var。複製 區別 var的作用於是函式作用域,其作用...
SpringBoot使用thymeleaf模板
springboot開發的web專案contrller如何跳轉到前端頁面 據說,最流行的還是freemarker和velocity這兩種模板,我們這裡用spring官方推薦的thymeleaf模板 在建立好springboot專案的基礎上,進行如下配置 在pom中到thymeleaf的依賴 org....