1. 程式人生 > 實用技巧 >NO.141 專案研發之測試團隊篇:建立測試用例,管理測試任務。

NO.141 專案研發之測試團隊篇:建立測試用例,管理測試任務。

pom

ribbon的依賴是包含在eureka-client中的

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

application.yml

server:
  port: 9001
spring:
  application:
    name: consumer
eureka:
  client:
    # 表示是否將自己註冊進入EurekaServer預設為true
    register-with-eureka: true
    # 是否從EurekaServer抓取已有的註冊資訊,預設為true
    # 單節點不會有影響,叢集環境必須設定為true才能配合ribbon使用負載均衡
    fetch-registry: true
    # 註冊到的EurekaServer路徑
    service-url:
      defaultZone: http://localhost:7001/eureka

restTemplate

使用LoadBalanced註解


@SpringBootApplication
@EnableEurekaClient
public class ConsumerApplication {

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

    @Bean
    @LoadBalanced //開啟使用ribbon的RestTemplate,預設策略是輪詢
    public RestTemplate getRestTemplate() {
        return new RestTemplate();
    }

}

使用

通過服務名呼叫,預設是輪詢策略


@RestController
public class AppController {

    @Autowired
    private RestTemplate restTemplate;

    //通過微服務服務名呼叫
    private final String PREFIX = "http://PROVIDER";

    @GetMapping
    public List getAll() {
        return restTemplate.getForObject(PREFIX + "/empt", List.class);
    }

}