在这里插入图片描述


解决Ribbon 第一次调用耗时高的配置

开启饥饿加载

# ribbon 饥饿加载 解决第一次耗时多的问题
ribbon:
  eager-load:
    enabled: true
    clients: artisan-pay-center,artisan-product-center  # #可以指定多个微服务用逗号分隔

超时时间相关参数

Ribbon 中有两种和时间相关的设置,分别是请求连接的超时时间和请求处理的超时时间,设置规则如下:

# 请求连接的超时时间
ribbon.ConnectTimeout=2000
# 请求处理的超时时间
ribbon.ReadTimeout=5000

也可以为每个Ribbon客户端设置不同的超时时间, 通过服务名称进行指定:
服务名.ribbon.ConnectTimeout=2000
服务名.ribbon.ReadTimeout=5000

在这里插入图片描述

并发参数

# 最大连接数
ribbon.MaxTotalConnections=500
# 每个host最大连接数
ribbon.MaxConnectionsPerHost=500

在这里插入图片描述

重试

# 每一台服务器重试的次数,不包含首次调用的那一次
ribbon.MaxAutoRetries=1

# 重试的服务器的个数,不包含首次调用的那一台实例
ribbon.MaxAutoRetriesNextServer=2

# 是否对所以的操作进行重试(True 的话 会对post put操作进行重试,存在服务幂等问题)
ribbon.OkToRetryOnAllOperations=true

特别是 OkToRetryOnAllOperations ,注意幂等性问题


源码

https://github.com/yangshangwei/SpringCloudAlibabMaster在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐