spring cloud 学习之-11-总结SpringCloud

Spring cloud总结

服务注册中心:eureka

服务调用:restTemplate,feign

负载均衡:ribbon

熔断:hystrix

配置中心:config-server,config-client

网关:zuul。

链路追踪:sleuth,zipkin。

上面这一套解决方案,足以应对日常的微服务搭建。

常见问题

  1. 解决服务注册慢,被其他服务发现慢的问题。

    eureka.instance.lease-renewal-interval-in-seconds: 10,续约的时间间隔,默认是30秒,建议用默认值。
    因为服务最少续约3次心跳才能被其他服务发现,所以我们缩短心跳时间。
    
  2. 已停止的微服务节点,注销慢或不注销。建议默认。

eureka server:

eureka:
  server: 
    #关闭自我保护
    enable-self-preservation: false
    #缩短清理间隔时间
    eviction-interval-timer-in-ms: 5000
    
eureka client:
eureka: 
  instance: 
    lease-renewal-interval-in-seconds: 10 //缩短心跳间隔。默认30秒
    lease-expiration-duration-in-seconds: 90 //缩短续约到期时间,默认90秒。

  1. instanceId的设置,要一目了然。
  2. 整合hystrix后,首次请求失败。

原因:hystrix默认超时时间是1秒,如果1秒内无响应,就会走fallback逻辑。由于spring的懒加载机制,首次请求要去获取注册表信息等。所以首次请求一般会超过1秒。

解决方法1:配置饥饿加载


ribbon:
  eager-load:
    enabled: true
    clients:
    - SERVICE-SMS
    
如果是网关
zuul: 
  ribbon:
    eager-load:
      enabled: true
      

解决方法2:设长hystrix超时时间,在command命令中设置

execution.isolation.thread.timeoutInMilliseconds
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值