spring cloud学习

Eureka
可提供服务注册服务:

--高可用Eureka简单配置

--peer1 

server:
  port: 8762
spring:
  application:
    name: eureka-server
   
eureka:
  instance:

    hostname: peer1 #(配置本地主机地址127.0.0.1 peer1)

    prefer-ip-address: false
  client:
    serviceUrl:
      defaultZone: http://peer2:8761/eureka/
 
--peer2
server:
  port: 8761
spring:
  application:
    name: eureka-server
eureka:
  instance:
    hostname: peer2
  client:
    service-url:
      defaultZone: http://peer1:8762/eureka/
 
服务提供方:
server:
  port: 8000
spring:
  application:
    name: microservice-provider-user
logging:
  level:
    root:INFO
eureka:
  client:
    serviceUrl:
      defaultZone: http://peer1:8762/eureka/,http://peer2:8761/eureka/
  instance:
    preferIpAddress=false
在服务启动类加上 @EnableDiscoveryClient
 
--服务调用方使用ribbon做软件负载
server:
  port: 8010
spring:
  application:
    name: microservice-consumer-movie-ribbon
eureka:
  client:
    serviceUrl:
      defaultZone: http://peer1:8762/eureka/
  instance:
    preferIpAddress: true
同样需要在服务启动类加上注解@EnableDiscoveryClient
 --feign 做负载均衡
server:
  port: 8020
spring:
  application:
    name: microservice-consumer-movie-feign
eureka:
  client:
    serviceUrl:
      defaultZone: http://peer1:8762/eureka/
  instance:
    preferIpAddress: true
ribbon:
  eureka:
    enabled: true
--需要在服务启动类上加上@EnableDiscoveryClient
--@EnableFeignClients
个人理解:feign在ribbon的基础上封装了对服务提供者调用操作,ribbon需要自己构建http请求,feign则面向接口,对可发者更友好
 
Zuul
添加依赖
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-zuul</artifactId>
 </dependency>
 <dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-eureka</artifactId>
  <exclusions>
    <exclusion>
     <groupId>ch.qos.logback</groupId>
     <artifactId>logback-classic</artifactId>
    </exclusion>
    <exclusion>
     <groupId>ch.qos.logback</groupId>
     <artifactId>logback-core</artifactId>
    </exclusion>
   </exclusions>
 </dependency>
 <dependency>
   <groupId>ch.qos.logback</groupId>
   <artifactId>logback-core</artifactId>
   <version>1.1.3</version>
   </dependency>
  <dependency>
   <groupId>ch.qos.logback</groupId>
   <artifactId>logback-access</artifactId>
   <version>1.1.3</version>
  </dependency>
  <dependency>
   <groupId>ch.qos.logback</groupId>
   <artifactId>logback-classic</artifactId>
   <version>1.1.3</version>
  </dependency>
配置信息:
spring.application.name = microservice-api-gateway
server.port= 8060
eureka.instance.hostname=gateway
eureka.client.serviceUrl.defaultZone=http://peer1:8762/eureka/,http://peer2:8761/eureka/
 
 在启动类添加Zuul代理注解
@SpringBootApplication
@EnableZuulProxy
启动后,可以通过Zuul服务地址:端口/eureka服务名小写/eureka服务资源***
可以配置映射路径:zuul.routes.microservice-provider-user.path = /user-provider/**
zuul.routes.servicename.path:servicename 和 eureka服务id不一致时,需要配置service-id
zuul.routes.user.path = /**
zuul.routes.user.service-id = microservice-provider-user
zuul.ignored-services = microservice-provider-user 忽略eureka上的一些服务
 
 
posted @ 2019-09-05 16:58  CoderRdf  阅读(212)  评论(0)    收藏  举报