欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

spring cloud中微服務(wù)之間的調(diào)用以及eureka的自我保護(hù)機(jī)制詳解

 更新時(shí)間:2018年07月23日 14:25:41   作者:IT高飛  
這篇文章主要介紹了spring cloud中微服務(wù)之間的調(diào)用以及eureka的自我保護(hù)機(jī)制詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

上篇講了spring cloud注冊(cè)中心及客戶端的注冊(cè),所以這篇主要講一下服務(wù)和服務(wù)之間是怎樣調(diào)用的

不會(huì)搭建的小伙伴請(qǐng)參考我上一篇博客:idea快速搭建spring cloud-注冊(cè)中心與注冊(cè)

基于上一篇的搭建我又自己搭建了一個(gè)客戶端微服務(wù):

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

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

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

在project-solr中的constroller中:

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

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

}

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

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

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

  @Bean
  @LoadBalanced//在注冊(cè)中心里進(jìn)行查找微服務(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)用注冊(cè)中心里的名字
    model.addAttribute("msg",msg);
    return "/index";
  }
}

這里的project-solr是配置里每個(gè)服務(wù)注冊(cè)到注冊(cè)中心的名字,根據(jù)名字調(diào)用服務(wù)的ip地址,可以實(shí)現(xiàn)動(dòng)態(tài)微服務(wù)調(diào)用效果,它不會(huì)因?yàn)楦鼡Q電腦而出錯(cuò)

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

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

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

然后新建默認(rèn)的目錄:

這里必須新建templates包,因?yàn)槭悄J(rèn)的目錄

然后index.html中:

運(yùn)行:

成功!

下面簡(jiǎn)單的說一下spring cloud eureka注冊(cè)中心的自我保護(hù)機(jī)制

優(yōu)點(diǎn):當(dāng)服務(wù)與注冊(cè)中心由于某個(gè)原因斷開的時(shí)候,服務(wù)與服務(wù)之間還可以連接,這時(shí)候eureka不會(huì)立刻清理,依舊會(huì)對(duì)改微服的信息進(jìn)行保存。

缺點(diǎn):當(dāng)服務(wù)與注冊(cè)中心由于某個(gè)原因斷開的時(shí)候,服務(wù)與服務(wù)之間也不可以連接,這時(shí)候可能會(huì)帶壞其他服務(wù)器。

當(dāng)然是優(yōu)點(diǎn)大于缺點(diǎn)的

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

其實(shí)每個(gè)服務(wù)每分鐘都會(huì)對(duì)注冊(cè)中心進(jìn)行心跳,而注冊(cè)中心會(huì)接受心跳,若注冊(cè)中心沒有接受到心跳則會(huì)認(rèn)為該服務(wù)死亡

官方對(duì)于自我保護(hù)機(jī)制的定義:eureka官方自我保護(hù)機(jī)制

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Maven?Web項(xiàng)目使用Cargo插件實(shí)現(xiàn)自動(dòng)化部署的詳細(xì)步驟

    Maven?Web項(xiàng)目使用Cargo插件實(shí)現(xiàn)自動(dòng)化部署的詳細(xì)步驟

    cargo ,它是一組幫助用戶實(shí)現(xiàn)自動(dòng)化部署,操作Web容器的工具,并且?guī)缀踔С炙械腤eb容器,這篇文章主要介紹了Maven?Web項(xiàng)目使用Cargo實(shí)現(xiàn)自動(dòng)化部署,需要的朋友可以參考下
    2023-02-02
  • ssm項(xiàng)目改造spring?boot項(xiàng)目完整步驟

    ssm項(xiàng)目改造spring?boot項(xiàng)目完整步驟

    Spring?Boot現(xiàn)在已經(jīng)成為Java開發(fā)領(lǐng)域的一顆璀璨明珠,它本身是包容萬象的,可以跟各種技術(shù)集成,下面這篇文章主要給大家介紹了關(guān)于ssm項(xiàng)目改造spring?boot項(xiàng)目的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • springcloud檢索中間件?ElasticSearch?分布式場(chǎng)景的使用

    springcloud檢索中間件?ElasticSearch?分布式場(chǎng)景的使用

    單機(jī)的elasticsearch做數(shù)據(jù)存儲(chǔ),必然面臨兩個(gè)問題:海量數(shù)據(jù)存儲(chǔ)問題、單點(diǎn)故障問題,本文重點(diǎn)給大家介紹springcloud檢索中間件?ElasticSearch?分布式場(chǎng)景的運(yùn)用,感興趣的朋友跟隨小編一起看看吧
    2023-10-10
  • 解決MyBatis-Plus使用動(dòng)態(tài)表名selectPage不生效的問題

    解決MyBatis-Plus使用動(dòng)態(tài)表名selectPage不生效的問題

    這篇文章主要介紹了如惡化解決MyBatis-Plus使用動(dòng)態(tài)表名selectPage不生效的問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-11-11
  • Spring IOC 三種配置方式詳解

    Spring IOC 三種配置方式詳解

    這篇文章主要介紹了Spring IOC 三種配置方式,基于xml配置方式組件管理,基于注解方式管理和配置類方式管理,這三種方式,通過圖文講解的非常詳細(xì),需要的朋友可以參考下
    2024-05-05
  • 工廠方法在Spring框架中的運(yùn)用

    工廠方法在Spring框架中的運(yùn)用

    這篇文章介紹了工廠方法在Spring框架中的運(yùn)用,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-10-10
  • SpringBoot封裝自己的Starter的實(shí)現(xiàn)方法

    SpringBoot封裝自己的Starter的實(shí)現(xiàn)方法

    這篇文章主要介紹了SpringBoot封裝自己的Starter的實(shí)現(xiàn)方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-04-04
  • Spring中的HandlerMapping執(zhí)行流程詳解

    Spring中的HandlerMapping執(zhí)行流程詳解

    這篇文章主要介紹了Spring中的HandlerMapping執(zhí)行流程詳解,HandlerMapping在Spring MVC框架的jar包下面,他是處理映射器,為用戶發(fā)送的請(qǐng)求找到合適的Handler Adapter,它將會(huì)把請(qǐng)求映射為HandlerExecutionChain對(duì)象,需要的朋友可以參考下
    2023-08-08
  • Java設(shè)計(jì)模式編程中的工廠方法模式和抽象工廠模式

    Java設(shè)計(jì)模式編程中的工廠方法模式和抽象工廠模式

    這篇文章主要介紹了Java設(shè)計(jì)模式編程中的工廠方法模式和抽象工廠模式,設(shè)計(jì)模式的建立有利于團(tuán)隊(duì)協(xié)作時(shí)代碼的共同維護(hù),需要的朋友可以參考下
    2016-01-01
  • 基于SpringBoot實(shí)現(xiàn)圖片上傳及圖片回顯

    基于SpringBoot實(shí)現(xiàn)圖片上傳及圖片回顯

    本篇文章主要介紹了SpringBoot如何實(shí)現(xiàn)圖片上傳及圖片回顯,文中通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2022-08-08

最新評(píng)論