其他分享
首页 > 其他分享> > Dubbo超时

Dubbo超时

作者:互联网

场景

给用户补偿积分,数据量在10W条左右,Api消费者调用Oms服务提供者,Oms消费者调用Point积分提供者。

错误补偿积分产生的结果

1.同一用户会有相同的数据原因补偿的积分,重复多次。
2.不同的用户有不同次数的数据补充积分,不同用户被执行的次数不一样。

产生的原因

Dubbo服务调用过程中,Api消费者调用Oms服务提供者,数据量太大,Oms在处理后对Api消费者的响应时间太长,超过Api消费者设置的响应时间1分钟,并且APi消费者设置了重试机制;
<dubbo:consumer check="false" retries="1" timeout="60000"/>
retries:重试机制的次数;timeout:超时时间设置
在Oms服务提供者还没有响应之前又一次调用Oms服务,导致同一个用户会因为相同的数据原因进行积分的重复补偿。

解决办法

1.对大的数据量进行分批,依次调用Oms服务,并且保证分批的数据量调用的时间在超时时间范围之内
2.也可以将消费者端的超时时间设置变大

同理

当Api服务 默认时间设置为60s,Oms服务 默认时间设置为30s 在Oms服务调用Point积分服务,积分服务响应超过30s时,在整个服务调用过程中要以短的默认时间为准。

标签:Dubbo,调用,服务,积分,Oms,Api,数据量,超时
来源: https://blog.csdn.net/qq_34138511/article/details/104833660