亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

關于SpringCloud的微服務結構及微服務遠程調(diào)用

 更新時間:2023年05月17日 11:23:06   作者:夏志121  
Spring Cloud 是一套完整的微服務解決方案,基于 Spring Boot 框架,準確的說,它不是一個框架,而是一個大的容器,它將市面上較好的微服務框架集成進來,從而簡化了開發(fā)者的代碼量,需要的朋友可以參考下

一、微服務結構

微服務這種方案需要技術框架來落地,全球的互聯(lián)網(wǎng)公司都在積極嘗試自己的微服務落地技術。在國內(nèi)最知名的就是SpringCloud和阿里巴巴的Dubbo。

微服務技術對比:

DubboSpringCloudSpringCloudAlibaba
注冊中心zookeeper、RedisEureka、ConsulNacos、Eureka
服務遠程調(diào)用Dubbo協(xié)議Feign (http協(xié)議)Dubbo、Feign
配置中心SpringCloudfigSpringCloudfig、Nacos
服務網(wǎng)關SpringCloudGateway、ZuulSpringCloudGateway、Zuul
服務監(jiān)控保護dubbo-admin、功能弱HystixSentinel

二、微服務遠程調(diào)用

根據(jù)訂單id查詢訂單功能:

需求:根據(jù)訂單id查詢訂單的同時,把訂單所屬的用戶信息一起返回

實現(xiàn)步驟:

1、注冊RestTemplate

在order-service的OrderApplication中注冊RestTemplate

@MapperScan("cn.itcast.order.mapper")
@SpringBootApplication
public class OrderApplication {
    public static void main(String[] args) {
        SpringApplication.run(OrderApplication.class, args);
    }
    /**
     * 創(chuàng)建RestTemplate并注入Spring容器
     * @return
     */
    @Bean
    @LoadBalanced
    public RestTemplate restTemplate(){
        return new RestTemplate();
    }
}

2、服務遠程調(diào)用RestTemplate

修改order-service中的OrderService的queryOrderById方法:

@Service
public class OrderService {
    @Autowired
    private OrderMapper orderMapper;
    @Autowired
    private RestTemplate restTemplate;
    public Order queryOrderById(Long orderId) {
        // 1.查詢訂單
        Order order = orderMapper.findById(orderId);
        //2、利用RestTemplate發(fā)送http,查詢用戶
        //2.1 url路徑
        String url = "http://localhost:8081/user/"+order.getUserId();
        //2。1 發(fā)送http請求,實現(xiàn)遠程調(diào)用
        User user = restTemplate.getForObject(url,User.class);
        //3.封裝user到Order
        order.setUser(user);
        // 4.返回
        return order;
    }
}

微服務調(diào)用方式:

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

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

提供者及消費者:

服務提供者:一次業(yè)務中,被其他微服務調(diào)用的服務(提供接口給其他微服務)

服務消費者:一次業(yè)務中,調(diào)用其他微服務的服務 (調(diào)用其他的微服務提供的接口)

服務調(diào)用關系:

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

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

提供者與消費者角色是相對

一個服務可以同時是服務提供者和服務消費者

到此這篇關于關于SpringCloud的微服務結構及微服務遠程調(diào)用的文章就介紹到這了,更多相關SpringCloud 微服務結構及調(diào)用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • springboot 在xml里讀取yml的配置信息的示例代碼

    springboot 在xml里讀取yml的配置信息的示例代碼

    這篇文章主要介紹了springboot 在xml里讀取yml的配置信息的示例代碼,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • springboot中使用雪花算法生成雪花ID

    springboot中使用雪花算法生成雪花ID

    本文主要介紹了springboot中使用雪花算法生成雪花ID,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • Spring Boot開啟遠程調(diào)試的方法

    Spring Boot開啟遠程調(diào)試的方法

    這篇文章主要介紹了Spring Boot開啟遠程調(diào)試的方法,幫助大家更好的理解和使用Spring Boot框架,感興趣的朋友可以了解下
    2020-10-10
  • Springboot集成Elasticsearch的步驟與相關功能

    Springboot集成Elasticsearch的步驟與相關功能

    ElasticSearch是開源搜索平臺領域的一個新成員,?ElasticSearch是一個基于Lucene構建的開源,分布式,RESTful搜索引擎,這篇文章主要給大家介紹了關于Springboot集成Elasticsearch的相關資料,需要的朋友可以參考下
    2021-12-12
  • IDEA2020 1.1中Plugins加載不出來的問題及解決方法

    IDEA2020 1.1中Plugins加載不出來的問題及解決方法

    這篇文章主要介紹了IDEA2020 1.1中Plugins加載不出來的問題,本文還給大家提到了IDEA 2020.1.1 找不到程序包和符號的問題,感興趣的朋友跟隨小編一起看看吧
    2020-06-06
  • 簡單了解Spring中常用工具類

    簡單了解Spring中常用工具類

    這篇文章主要介紹了簡單了解Spring中常用工具類,非常全面,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • Java?Stream流中的filter()使用方法舉例詳解

    Java?Stream流中的filter()使用方法舉例詳解

    filter()是Java?Stream?API中的中間操作,用于根據(jù)給定的Predicate條件篩選流中的元素,它通過接收一個返回boolean值的函數(shù)(斷言)作為參數(shù),篩選出滿足條件的元素并收集到新的流中,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-11-11
  • springboot使用小工具之Lombok、devtools、Spring Initailizr詳解

    springboot使用小工具之Lombok、devtools、Spring Initailizr詳解

    這篇文章主要介紹了springboot使用小工具之Lombok、devtools、Spring Initailizr詳解,Lombok可以代替手寫get、set、構造方法等,需要idea裝插件lombok,本文通過示例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • Java語言獲取TCP流的實現(xiàn)步驟

    Java語言獲取TCP流的實現(xiàn)步驟

    使用Wireshark分析網(wǎng)絡包時,一個很常用的功能就是選中一個TCP報文,然后查看這個TCP報文的TCP流,從而可以進一步分析建連是否慢了,斷連是否正常等情況,那么本文就TCP流的概念以及在Java中如何獲取,做一個簡單的學習,需要的朋友可以參考下
    2023-11-11
  • 詳解Java Project項目打包成jar,并生成exe文件

    詳解Java Project項目打包成jar,并生成exe文件

    本篇文章主要介紹了Java Project項目打包成jar,并生成exe文件,非常具有實用價值,有興趣的可以了解一下。
    2017-01-01

最新評論