耗时的RPC会阻塞心跳,从而导致JGroups超时吗?

时间:2013-12-05 07:51:44

标签: java block rpc jgroups

我在我的jgroups程序中使用TCP协议,并将FD_ALL.timeout设置为12000ms FD_ALL.interval = 4000ms。 发送代码如

MessageDispatcher.sendMessage(message, new RequestOptions(ResponseMode.GET_ALL, 4000))

RequestHandler代码如下:

public Object handle(Message message) {
     //time consuming code
    }

有时处理邮件的成本超过12000毫秒。 我的问题是,什么时候它会阻止心跳包直到超时?因此导致viewAccepted事件指示该对等体的左侧?

2 个答案:

答案 0 :(得分:1)

如果您的预期服务时间 N ,则您的超时应为 2N,作为经验法则。

答案 1 :(得分:0)

我认为这只会阻止发送线程和下一个发送线程(如果存在netxt发送)