国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

SpringCloud&Eureka學(xué)習(xí)教程

這篇具有很好參考價值的文章主要介紹了SpringCloud&Eureka學(xué)習(xí)教程。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

SpringCloud

SpringCloud是目前國內(nèi)使用最廣泛的微服務(wù)框架,集成了各種微服務(wù)功能組件,并基于Springboot實現(xiàn)了這些組件的自動裝配,從而提供了良好的開箱即用體驗

官網(wǎng)地址:https://spring.io/projects/spring-cloud

SpringCloud&Eureka學(xué)習(xí)教程,SpringCloud,spring cloud,eureka,學(xué)習(xí)

服務(wù)拆分&遠(yuǎn)程調(diào)用

服務(wù)拆分注意事項:

  • 單一職責(zé):不同微服務(wù),不要重復(fù)開發(fā)相同業(yè)務(wù)
  • 數(shù)據(jù)獨立:不要訪問其他微服務(wù)的數(shù)據(jù)庫
  • 面向服務(wù):將自己的業(yè)務(wù)暴露為接口,供其他微服務(wù)調(diào)用

遠(yuǎn)程調(diào)用:

基于RestTemplate發(fā)起的http請求實現(xiàn)遠(yuǎn)程調(diào)用

http請求做遠(yuǎn)程調(diào)用時與語言無關(guān)的調(diào)用,只要知道對方的ip、端口、接口路徑、請求參數(shù)即可

Eureka注冊中心

Eureka 是 Netflix 公司開發(fā)的一款開源的服務(wù)注冊與發(fā)現(xiàn)組件。

Spring Cloud 將 Eureka 與 Netflix 中的其他開源服務(wù)組件(例如 Ribbon、Feign 以及 Hystrix 等)一起整合進(jìn) Spring Cloud Netflix 模塊中,整合后的組件全稱為 Spring Cloud Netflix Eureka。

Eureka 是 Spring Cloud Netflix 模塊的子模塊,它是 Spring Cloud 對 Netflix Eureka 的二次封裝,主要負(fù)責(zé) Spring Cloud 的服務(wù)注冊與發(fā)現(xiàn)功能。

Spring Cloud 使用 Spring Boot 思想為 Eureka 增加了自動化配置,開發(fā)人員只需要引入相關(guān)依賴和注解,就能將 Spring Boot 構(gòu)建的微服務(wù)輕松地與 Eureka 進(jìn)行整合


在Eureka架構(gòu)中,微服務(wù)角色有兩類:

  • EurekaServer:服務(wù)端,注冊中心

    • 記錄服務(wù)信息
  • EurekaClient:客戶端

    • Provider:服務(wù)提供者

      • 注冊自己的信息到EurekaServer
      • 每隔30秒向EurekaServer發(fā)送心跳
    • consumer:服務(wù)消費者

      • 根據(jù)服務(wù)名稱從EurekaServer拉取服務(wù)列表
      • 基于服務(wù)列表做負(fù)載均衡,選中一個微服務(wù)后發(fā)起遠(yuǎn)程調(diào)用

1.服務(wù)調(diào)用關(guān)系

服務(wù)提供者:暴露接口給其他微服務(wù)調(diào)用

服務(wù)消費者:調(diào)用其他微服務(wù)提供的接口

  • 提供者與消費者角色其實是相對的
  • 一個服務(wù)可以同時是服務(wù)提供者和服務(wù)消費者

無論是消費者還是提供者,引入eureka-client依賴、知道eureka地址后,都可以完成服務(wù)注冊

2.Eureka的作用

SpringCloud&Eureka學(xué)習(xí)教程,SpringCloud,spring cloud,eureka,學(xué)習(xí)

  • 消費者該如何獲取服務(wù)提供者具體信息?

    • 服務(wù)提供者啟動時向eureka注冊自己的信息

    • eureka保存這些信息

    • 消費者根據(jù)服務(wù)名稱向eureka拉取提供者信息

  • 如果有多個服務(wù)提供者,消費者該如何選擇?

    • 服務(wù)消費者利用負(fù)載均衡算法,從服務(wù)列表中挑選一個
  • 消費者如何感知服務(wù)提供者健康狀態(tài)?

    • 服務(wù)提供者會每隔30秒向EurekaServer發(fā)送心跳請求,報告健康狀態(tài)

    • eureka會更新記錄服務(wù)列表信息,心跳不正常會被剔除

    • 消費者就可以拉取到最新的信息

3.實現(xiàn)

  1. 搭建EurekaServer

    (1)引入eureka-server依賴

    (2)添加@EnableEurekaServer注解

    (3)在application.yml中配置eureka地址

  2. 服務(wù)注冊

    (1)引入eureka-client依賴

    (2)在application.yml中配置eureka地址

  3. 服務(wù)發(fā)現(xiàn)

    (1)引入eureka-client依賴

    (2)在application.yml中配置eureka地址

    (3)給RestTemplate添加@LoadBalanced注解

    (4)用服務(wù)提供者的服務(wù)名稱遠(yuǎn)程調(diào)用


創(chuàng)建enreka-server模塊,引入依賴,啟動類上添加注解:

<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
@EnableEurekaServer
@SpringBootApplication
public class EurekaApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class, args);
    }
}

user-service模塊引入依賴,配置文件:

<dependency>
   <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
server:
  port: 8081
spring:
  application:
    name: userservice
  datasource:
    url: jdbc:mysql://localhost:3306/cloud_user?useSSL=false
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver
mybatis:
  type-aliases-package: cn.itcast.user.pojo
  configuration:
    map-underscore-to-camel-case: true
logging:
  level:
    cn.itcast: debug
  pattern:
    dateformat: MM-dd HH:mm:ss:SSS
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka/

order-service模塊引入依賴,配置文件:

<dependency>
   <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
server:
  port: 8080
spring:
  application:
    name: orderservice
  datasource:
    url: jdbc:mysql://localhost:3306/cloud_order?useSSL=false
    username: root
    password: 123456
    driver-class-name: com.mysql.jdbc.Driver
mybatis:
  type-aliases-package: cn.itcast.user.pojo
  configuration:
    map-underscore-to-camel-case: true
logging:
  level:
    cn.itcast: debug
  pattern:
    dateformat: MM-dd HH:mm:ss:SSS
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka/

order-service完成服務(wù)拉?。?/p>

服務(wù)拉取是基于服務(wù)名稱獲取服務(wù)列表,然后在對服務(wù)列表做負(fù)載均衡

@Service
public class OrderService {

    @Autowired
    private OrderMapper orderMapper;

    @Autowired
    private RestTemplate restTemplate;

    public Order queryOrderById(Long orderId) {
        // 1.查詢訂單
        Order order = orderMapper.findById(orderId);
        // 2.查詢用戶
        String url = "http://userservice/user/" + order.getUserId();
//        String url = "http://localhost:8081/user/" + order.getUserId(); 用服務(wù)名代替ip、端口
        User user = restTemplate.getForObject(url, User.class);
        //3.封裝user信息
        order.setUser(user);
        // 4.返回
        return order;
    }
}
 @Bean
 @LoadBalanced  //負(fù)載均衡
 public RestTemplate restTemplate(){
    return new RestTemplate();
 }
}

SpringCloud&Eureka學(xué)習(xí)教程,SpringCloud,spring cloud,eureka,學(xué)習(xí)文章來源地址http://www.zghlxwxcb.cn/news/detail-780682.html

到了這里,關(guān)于SpringCloud&Eureka學(xué)習(xí)教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【spring cloud學(xué)習(xí)】3、Eureka Server注冊中心

    【spring cloud學(xué)習(xí)】3、Eureka Server注冊中心

    Eureka本身是Netflix開源的一款注冊中心產(chǎn)品,并且Spring Cloud提供了相應(yīng)的集成封裝。選擇Eureka作為注冊中心實例來講解是出于以下原因: (1)Eureka在業(yè)界的應(yīng)用十分廣泛,整個框架經(jīng)受住了Netflix嚴(yán)酷生產(chǎn)環(huán)境的考驗。 (2)除了Eureka注冊中心外,Netflix的其他服務(wù)治理功能也十

    2024年02月11日
    瀏覽(91)
  • Spring Cloud(Finchley版本)系列教程(一) 服務(wù)注冊與發(fā)現(xiàn)(eureka)

    Spring Cloud(Finchley版本)系列教程(一) 服務(wù)注冊與發(fā)現(xiàn)(eureka)

    Spring Cloud(Finchley版本)系列教程(一) 服務(wù)注冊與發(fā)現(xiàn)(eureka) 為了更好的瀏覽體驗,歡迎光顧勤奮的凱爾森同學(xué)個人博客http://www.huerpu.cc:7000 如有錯誤懇請大家批評指正,與大家共同學(xué)習(xí)、一起成長,萬分感謝。 一、構(gòu)建環(huán)境 Spring Cloud 的構(gòu)建工具可以使用 Maven 或 Gradle ,但 Ma

    2024年02月09日
    瀏覽(101)
  • 特別詳細(xì)的Spring Cloud 系列教程1:服務(wù)注冊中心Eureka的啟動

    特別詳細(xì)的Spring Cloud 系列教程1:服務(wù)注冊中心Eureka的啟動

    Eureka已經(jīng)被Spring Cloud繼承在其子項目spring-cloud-netflix中,搭建Eureka Server的方式還是非常簡單的。只需要通過一個獨立的maven工程即可搭建Eureka Server。? 我們引入spring cloud的依賴和eureka的依賴。 注意spring cloud和springboot的版本要對應(yīng),不然容易出現(xiàn)各種奇怪的錯誤。 不知道spr

    2024年04月08日
    瀏覽(103)
  • spring cloud 之 eureka

    spring cloud 之 eureka

    Spring Cloud封裝了Netflix 公司開發(fā)的Eureka模塊來實現(xiàn)服務(wù)治理,SpringCloud將它集成在其子項目spring-cloud-netflix中 在服務(wù)注冊與發(fā)現(xiàn)中,有一個注冊中心。當(dāng)服務(wù)器啟動的時候,會把當(dāng)前自己服務(wù)器的信息比如服務(wù)地址通訊地址等以別名方式注冊到注冊中心上 強調(diào)一下,eureka從2

    2024年02月12日
    瀏覽(91)
  • 2-Spring cloud之Eureka快速剔除失效服務(wù) 以及 Eureka原理

    2-Spring cloud之Eureka快速剔除失效服務(wù) 以及 Eureka原理

    添加如下配置: 每個服務(wù)的yml配置如下: 如下: 更多可以參考下面的文章,說的不錯 Eureka服務(wù)端掛了,為什么微服務(wù)還能調(diào)通?(原理分析).

    2024年02月13日
    瀏覽(296)
  • Spring Cloud Eureka面試題

    序號 內(nèi)容 鏈接地址 1 Java面試題 https://blog.csdn.net/golove666/article/details/137360180 2 JVM面試題 https://blog.csdn.net/golove666/article/details/137245795 3 Servlet面試題 https://blog.csdn.net/golove666/article/details/137395779 4 Maven面試題 https://blog.csdn.net/golove666/article/details/137365977 5 Git面試題 https://blog.csdn.n

    2024年04月27日
    瀏覽(90)
  • Spring Cloud應(yīng)用- Eureka原理、搭建

    Spring Cloud應(yīng)用- Eureka原理、搭建

    初期對Spring Cloud的學(xué)習(xí)以應(yīng)用搭建為主,所以內(nèi)容不會太枯燥。 一直以來,自以為Spring全家桶的學(xué)習(xí)中,Spring framework是基礎(chǔ)中的基礎(chǔ),部分內(nèi)容也還是必須要讀源碼去理解底層原理,SpringMVC、SpringBoot,甚至Mybatis等等,都是如此。但是對于Spring Cloud來說,就從應(yīng)用入手,以系

    2024年02月06日
    瀏覽(89)
  • [Spring Cloud] Eureka Server安裝

    [Spring Cloud] Eureka Server安裝

    ??個人主頁:沫洺的主頁 ????系列專欄:????JavaWeb專欄???JavaSE專欄 ???Java基礎(chǔ)專欄??vue3專欄? ? ? ? ? ? ? ? ? ? ? ? ? ? ???MyBatis專欄??Spring專欄??SpringMVC專欄??SpringBoot專欄 ?????????????????????????????Docker專欄??Reids專欄??MQ專欄??SpringClou

    2024年02月13日
    瀏覽(86)
  • 【Spring Cloud系列】- Eureka使用詳解

    【Spring Cloud系列】- Eureka使用詳解

    Eureka2.0版本已經(jīng)停止維護(hù),為什么要寫這篇博客重復(fù)已停止更新的中間件,其目的主要是: 認(rèn)識微服務(wù)注冊中心:雖然Eureka已經(jīng)停止維護(hù),但微服務(wù)架構(gòu)在當(dāng)今非常流程,學(xué)習(xí)Eureka可以更好的理解微服務(wù)。 便于老舊系統(tǒng)維護(hù):如果使用微服務(wù),公司一定會存在使用Eureka服務(wù)

    2024年02月09日
    瀏覽(95)
  • 二、Spring Cloud Eureka 簡介、快速入門

    二、Spring Cloud Eureka 簡介、快速入門

    Eureka 來源于古希臘詞匯,意為“發(fā)現(xiàn)了”。在軟件領(lǐng)域, Eureka 是 Netflix 在線影片公司開源的一個 服務(wù)注冊與發(fā)現(xiàn)的組件 ,和其他 Netflix 公司的服務(wù)組件(例如負(fù)載均衡、熔斷器、網(wǎng)關(guān)等) 一起,被 Spring Cloud 社區(qū)整合為 Spring Cloud Netflix 模塊。 Eureka 是 Netflix 貢獻(xiàn)給 Spring

    2024年02月12日
    瀏覽(93)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包