1. <wbr id="m8vu6"></wbr>

      <del id="m8vu6"><center id="m8vu6"><source id="m8vu6"></source></center></del>
        <p id="m8vu6"><sub id="m8vu6"></sub></p>

        VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
        SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
        當前位置:
        首頁 > 編程開發 > .net教程 >
        • ASP.net教程之SpringBoot整合SpringCloud搭建分布式應用

        • 2019-06-18 23:02 來源:未知

        什么是SpringCloud?

          SpringCloud是一個分布式的整體解決方案。SpringCloud為開發者提供了在分布式系統中快速構建的工具,使用SpringCloud可以快速的啟動服務或構建應用、同時能夠快速和云平臺資源進行對接。

        SpringCloud分布式開發五大常用組件

          服務發現——Netflix Eureka

          客戶端負載均衡——Netflix Ribbon

          斷路器——NetFlix Hystrix

          服務網關——Netflix Zuul

          分布式配置——Spring Cloud Config

        創建一個分布式應用

          1)New Project 選擇 Empty Project

          2)創建注冊中心應用

            2.1 New Model→Spring Initializr后面選擇導入Cloud Discovery的Eureka Server依賴。

            2.2 在啟動類上加入@EnableEurekaServer注解。

            2.3 創建application.yml,內容如下

        復制代碼
        server:
          port: 8761
        eureka:
          instance:
            hostname: eureka-server # eureka實例的主機名
          client:
            register-with-eureka: false #不將自己注冊到eureka上
            fetch-registry: false #不從eureka上來獲取服務的注冊信息
            service-url:
              defaultZone: http://localhost:8761/eureka/
        復制代碼

          3)創建服務提供者工程

            3.1 New Model→Spring Initializr后面選擇導入Cloud Discovery的Eureka Discovery依賴。

            3.2 創建一個Service

        復制代碼
        package com.example.providerticket.Service;
        
        import org.springframework.stereotype.Service;
        
        @Service
        public class TickerService {
        
            public String getTicker(){
                return "《厲害了,我的國》";
            }
        
        }
        復制代碼

            3.3 創建一個Controller

        復制代碼
        @RestController
        public class TickerController {
        
            @Autowired
            TickerService tickerService;
        
            @GetMapping("/ticket")
            public String getTicker(){
                return tickerService.getTicker();
            }
        
        }
        復制代碼

            3.4 創建配置application.yml

        復制代碼
        server:
          port: 8002
        spring:
          application:
            name: provider-ticket
        eureka:
          instance:
            prefer-ip-address: true #注冊服務的時候使用服務ip地址
          client:
            service-url:
              defaultZone: http://localhost:8761/eureka/
        復制代碼

          4)創建服務消費者工程

            4.1 New Model→Spring Initializr后面選擇導入Cloud Discovery的Eureka Discovery依賴。

            4.2 配置啟動類

        復制代碼
        @EnableDiscoveryClient //開啟發現服務功能
        @SpringBootApplication
        public class ConsumerUserApplication {
        
            public static void main(String[] args) {
                SpringApplication.run(ConsumerUserApplication.class, args);
            }
        
            @LoadBalanced //啟用負載均衡機制
            @Bean
            public RestTemplate restTemplate(){
                return new RestTemplate();
            }
        
        }
        復制代碼

            4.3 配置application.yml

        復制代碼
        spring:
          application:
            name: consumer-user
        server:
          port: 8200
        eureka:
          instance:
            prefer-ip-address: true #注冊服務的時候使用服務ip地址
          client:
            service-url:
              defaultZone: http://localhost:8761/eureka/
        復制代碼

            4.4 創建Controller并測試

        復制代碼
        @RestController
        public class UserController {
        
            @Autowired
            RestTemplate restTemplate;
        
            @GetMapping("/buy")
            public String byTicket(String name){
                String forObject = restTemplate.getForObject("http://PROVIDER-TICKET/ticket", String.class);
                return name+"購買了"+forObject;
            }
        
        }
        復制代碼

          至此,一個SpringBoot整合SpringCloud的簡單分布式應用已搭建完畢。

        相關教程
        免费看成年人视频大全_免费看成年人视频在线观看