配合eureka能夠不用配置文件,自動實現負載均衡。git
consumer能夠根據項目服務名稱進行訪問,若是多個服務名稱一致,自動實現負載均衡。web
一套基於Netflix Feign實現的聲明式服務調用客戶端。它使得編寫Web服務客戶端變得更加簡單。spring
咱們只須要經過建立接口並用註解來配置它既可完成對Web服務接口的綁定。瀏覽器
因爲Feign是基於Ribbon實現的,因此它自帶了客戶端負載均衡功能。並且可以經過註解的方式找到服務提供方的名稱與執行方法。springboot
@FeignClient("eureka-client") public interface DcClient { @GetMapping("/dc") String consumer(); }
@RestController public class DcController { @Autowired DcClient dcClient; @GetMapping("/consumer") public String dc() { return dcClient.consumer(); } }
Spring Cloud Config是Spring Cloud團隊建立的一個全新項目,用來爲分佈式系統中的基礎設施和微服務應用提供集中化的外部配置支持,它分爲==服務端==與==客戶端==兩個部分。app
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency> </dependencies>
spring application: name: config-server cloud: config: server: git: uri: http://git.oschina.net/didispace/config-repo-demo/ server: port: 1201
在這一步後,開始啓動服務,看是否存在問題,若是不存在問題,那麼能夠繼續git訪問操做負載均衡
spring.cloud.config.server.git.username:訪問Git倉庫的用戶名 spring.cloud.config.server.git.password:訪問Git倉庫的用戶密碼
http://localhost:1201//{application}-{profile}.yml
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> </dependency> </dependencies>
@SpringBootApplication public class Application { public static void main(String[] args) { new SpringApplicationBuilder(Application.class).web(true).run(args); } }
spring: application: name: config-client cloud: config: uri: http://localhost:1201/ profile: default label: master server: port: 2001
http://localhost:2001/info