溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

spring cloud中eureka自我保護機制的示例分析

發(fā)布時間:2021-08-12 12:37:09 來源:億速云 閱讀:115 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“spring cloud中eureka自我保護機制的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“spring cloud中eureka自我保護機制的示例分析”這篇文章吧。

一個客戶端微服務(wù):

spring cloud中eureka自我保護機制的示例分析

所以現(xiàn)在有兩個微服務(wù),我們所實現(xiàn)的就是微服務(wù)1和微服務(wù)2之間的調(diào)用

注冊中心就不用多說了,具體看一下兩個微服務(wù)

spring cloud中eureka自我保護機制的示例分析

application.yml配置也不用說了,不知道怎么配置的請參考我上篇博客

在project-solr中的constroller中:

@RestController//這里使此Constroller中所有的方法返回的不是頁面
public class SolrSearchConstroller {

  @RequestMapping("/SolrSearch")
  public String SolrSearch(){
    return "這里是Solr";
  }

}

這里是為了讓另一個服務(wù)調(diào)用

在另一個微服務(wù)project-shopping-mall 啟動類中,我們 必須定義一個方法:

@SpringBootApplication
@EnableDiscoveryClient //表示eureka客戶端
public class ShoppingMallProvider {

  @Bean
  @LoadBalanced//在注冊中心里進行查找微服務(wù)
  public RestTemplate restTemplate(){

    RestTemplate restTemplate=new RestTemplate();
    return restTemplate;
  }

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

然后在project-shopping-mall里的Controller中調(diào)用project-solr中的constroller:

@Controller
public class PageController {

  @Autowired
  private RestTemplate restTemplate;

  @RequestMapping("/toIndex")
  public String toIndex(Model model){

    String msg=restTemplate.getForEntity("http://project-solr/SolrSearch",String.class).getBody();//project-solr是調(diào)用注冊中心里的名字
    model.addAttribute("msg",msg);
    return "/index";
  }
}

這里的project-solr是配置里每個服務(wù)注冊到注冊中心的名字,根據(jù)名字調(diào)用服務(wù)的ip地址,可以實現(xiàn)動態(tài)微服務(wù)調(diào)用效果,它不會因為更換電腦而出錯

下面接著建設(shè)頁面,這里我用的是thymeleaf組件

我們先在build.gradle中添加依賴:

//thymeleaf組件
  compile 'org.springframework.boot:spring-boot-starter-thymeleaf'

然后新建默認的目錄:

spring cloud中eureka自我保護機制的示例分析

這里必須新建templates包,因為是默認的目錄

然后index.html中:

spring cloud中eureka自我保護機制的示例分析

運行:

spring cloud中eureka自我保護機制的示例分析

成功!

下面簡單的說一下spring cloud eureka注冊中心的自我保護機制

優(yōu)點:當服務(wù)與注冊中心由于某個原因斷開的時候,服務(wù)與服務(wù)之間還可以連接,這時候eureka不會立刻清理,依舊會對改微服的信息進行保存。

缺點:當服務(wù)與注冊中心由于某個原因斷開的時候,服務(wù)與服務(wù)之間也不可以連接,這時候可能會帶壞其他服務(wù)器。

當然是優(yōu)點大于缺點的

那eureka注冊中心是怎么知道微服務(wù)還存活的呢?

其實每個服務(wù)每分鐘都會對注冊中心進行心跳,而注冊中心會接受心跳,若注冊中心沒有接受到心跳則會認為該服務(wù)死亡

以上是“spring cloud中eureka自我保護機制的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI