spring cloud netfilx

Netfilx听起来微服务很高大上,但是做起来时因为有了框架,所以只是简单的注解和类就可以搞定了。
一、Eureka配置需要配公共的访问地址,引入server和client包,server需要禁用自身的注册功能。

eureka:
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      defaultZone: http://localhost:7000/eureka
  instance:
    hostname: ldx-eureka
  server:
    enable-self-preservation: false
    eviction-interval-timer-in-ms: 4000

Note:导入用户类时需要去其他服务找类。需要先打包install进本地仓库之后,其他服务才可以用。maven中,clear是清除target文件,compile是生成target文件,package是打成jar等包,install是把jar包放到本地maven仓库中,deploy就是发布远程仓库。因为Java核心的就是包依赖,所以做的这么细粒度。

二、feign是负载均衡和服务间调用。需要专门生成一个接口,这个接口带上注解去请求其他服务。本服务调这个接口,而不是直接调其他服务。
pr:feign整合了ribbon,ribbon是管理负载均衡的。这个策略是内置的,不用设置,如果是多个相同服务则自动采取轮询。

@Component
@FeignClient(name = "ldx-order",fallback = OrderFeignFallback.class)
public interface OrderFeignClient {

    @PostMapping("/order/add")
    public String add(UserCommon userCommon);
}

三、hystrix是服务降级和服务熔断。降级和熔断都需要在服务调用失败时返回内容。正好,在调用其他服务的这个接口做文章,实现这个接口,成为回调类。如果正常调用的话,就是调用其他服务,如果不成功则调用这个回调类。

@Component
public class OrderFeignFallback implements OrderFeignClient {
    @Override
    public String add(UserCommon userCommon) {
        System.out.println("发生了服务降级");
        return "发生了服务降级";
    }
}

四、Zuul作为网关,访问固定的网址前缀时,转移到某个服务上。需要在启动类上加注解@EnableZuulProxy,也要作为微服务中的一个。但是配置上网关后,被转发的服务降级就不生效了。这个问题暂时搁置,要去唱歌了。

zuul:
  routes:
    order-api:
      path: /oapi/**
      serviceId: ldx-order-api
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值