Eureka服務註冊與發現

註冊中心的創建
一、增長pom文件;
二、修改yml配置文件;
三、添加@EnableEurekaServer註解;
四、啓動進入服務註冊頁面。
微服務註冊到註冊中心
一、添加yml配置,尋找註冊中心地址
二、添加@EnableEurekaClient註解在啓動類;
三、啓動服務註冊頁面,新增了一個註冊的微服務。
 配置修改:
<wiz_code_mirror>
 
 
 
 
 
 
 
 
 
Eureka: 
 instance: 
  instance-id: microservicecloud-8081 //主機映射名稱的修改
  prefer-id-address: true //訪問路徑能夠顯示ip
//info內容構建,替換error頁面,添加maven的build標籤配置後,增長如下配置。
info: 
 app.name: microservice
 company.name: sun
 build.artifact.id: $project.artifactId$
 build.version: $project.version$
 
 
自我保護機制:
好死不如賴活着:寧肯保留錯誤的服務註冊信息,也不盲目註銷健康的服務實例。
小心跳數從新恢復到閥值以上時,該節點自動退出自我保護機制。
<wiz_code_mirror>
 
 
 
 
 
 
 
 
 
eureka: 
 server: 
  enable-self-preservation: false//禁用自我保護機制,通常不使用
 
 
服務發現:
一、在啓動類上新增註解@EnableDiscoveryClient
二、注入並訪問發現的服務
<wiz_code_mirror>
 
 
 
 
 
 
 
 
 
@AutoWired
private DiscoveryClient client;
@GetMapping(value = "/dept/discovery")
public Object discovery(){
 List<String> list = client.getServices();
    List<ServiceInstance> srvList = client.getInstances("MICROSERVICE");
}
 
 
Eureka集羣:
一、新增2個Eureka模塊,修改hosts配置文件;
二、修改yml配置文件
<wiz_code_mirror>
 
 
 
 
 
 
 
 
 
eureka: 
 client: 
  service-url: 
   #defaultZone: http://localhost:7001/eureka //單機版
   #defaultZone:http://eureka7002.com:7002/eureka/,http://eureka7002.com:7002/eureka/ #集羣版
 
 
三、訪問任意註冊中心,在Ds Replicas 下新增了另外兩個集羣節點。
Eureka和ZooKeeper比較:
關係型數據庫:事務實現了ACID理論;
非關係型數據庫:分佈式集羣系統只能保證CAP原則的兩項。
    一、CP原則:Zookeeper實現,一臺宕機後,會再次尋找leader,這個時間段沒法達到A原則;
    二、CA原則:Eureka實現,平等集羣,一臺宕機後,當即轉發到另外一臺上。
                自我保護機制保證高可用,在沒心跳的狀況下不會中止過時服務。
                通常配合BASE原則使用,保證最終的一致性便可。
 
 

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false">數據庫

相關文章
相關標籤/搜索