站长网 语言 Java 从零开启手写 RPC-timeout 超时处理

Java 从零开启手写 RPC-timeout 超时处理

前面我们实现了通用的 rpc,但是存在一个问题,同步获取响应的时候没有超时处理。如果 server 挂掉了,或者处理太慢,客户端也不可能一直傻傻的等。当外部的调用超过指定的时间后,就直接报错,避免无意义的资源消耗。思路调用的时候,将开始时间保留。获取

前面我们实现了通用的 rpc,但是存在一个问题,同步获取响应的时候没有超时处理。

 

如果 server 挂掉了,或者处理太慢,客户端也不可能一直傻傻的等。

 

当外部的调用超过指定的时间后,就直接报错,避免无意义的资源消耗。

 

思路

调用的时候,将开始时间保留。

 

获取的时候检测是否超时。

 

同时创建一个线程,用来检测是否有超时的请求。

 

实现

思路

调用的时候,将开始时间保留。

 

获取的时候检测是否超时。

 

同时创建一个线程,用来检测是否有超时的请求。

 

超时检测线程

为了不影响正常业务的性能,我们另起一个线程检测调用是否已经超时。

本文来自网络,不代表站长网立场,转载请注明出处:https://www.tzzz.com.cn/html/biancheng/yuyan/2021/1102/18053.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部