簡單的搭建ribbon
ribbon
**比如ABC是三個不同的使用者,A每天早上用寬帶,B是中午,C是下午,如果給每個人連接配接一個100明白寬帶,ABC三個人一天中使用存在很大的資源浪費。如果将三個100mb的寬帶合成一個300mb的寬帶給三個人使用。不僅可以提升網速,還可以減少資源消耗。
Ribbon也是這個原理,比如十萬個人請求同一個服務端,那麼應該回奔潰,這時候ribbon作用就是将這十萬個請求配置設定到起到不同到服務端進行減輕伺服器的壓力。,
在原有的項目基礎上,在8001端口項目添加依賴
<!--加入負載均衡依賴ribbon-->
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-ribbon -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
<!--配置eurake客服端依賴-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
編寫配置類
@Configuration
public class ConfigBena {
@Bean
@LoadBalanced //因為請求都是通過RestTemplate進行請求,是以加上這個注解可以實作負載均衡
public RestTemplate restTemplate(){
return new RestTemplate();
}
}
配置檔案的配置
spring.application.name=constumers-80
#不想eurake注冊自己(預設是ture)
eureka.client.register-with-eureka=false
#請求的注冊端口
eureka.client.service-url.defaultZone=http://localhost:7001/eureka/
如果你是叢集配置,需要在eureka.client.service-url.defaultZone後面跟上你現在配置所有的eurake
接着是contreller
這個地方隻需要修改之前的服務端的端口:
private static final String RESET_URL_PREFIX=“http://SPRINGCLOUDS-PROVIDERS-8001”;
其中SPRINGCLOUDS-PROVIDERS-800是8001端口配置的spring.application.name=springclouds-providers-8001
(這樣寫的目的,比如我們現在有三十個eruake,8001端口注冊到三十個eurake,不可能寫成 private static final String RESET_URL_PREFIX=三十個eruake的url吧。。所有直接用8001注冊的到eurake的Id回自動路由目前的路徑)
最後編寫啟動類
@SpringBootApplication
@MapperScan("constumer")
@EnableEurekaClient
public class ApplicationConsturmer80 {
public static void main(String[] args) {
SpringApplication.run(ApplicationConsturmer80.class);
}
}