最近在做需求的时候,遇到一个问题,就是调用三方的服务,没有设置超时链接,影响了消息队列中消息的消费速度,进而导致消息队列消息有挤压。对此找到了一种设置连接超时的方法,适用于基于Xfire实现webservice的调用,具体如下:
1、新建HttpMessageSender
import org.apache.commons.httpclient.params.HttpClientParams;
import org.apache.commons.httpclient.params.HttpConnectionManagerParams;
import org.codehaus.xfire.MessageContext;
import org.codehaus.xfire.exchange.OutMessage;
import org.codehaus.xfire.transport.http.CommonsHttpMessageSender;
/**
* @description resolve the connection timeout
* @author jerry
* @date 20170814
*
*/
public class HttpMessageSender extends CommonsHttpMessageSender{
public HttpMessageSender(OutMessage message, MessageContext context) {
super(message, context);<

在处理调用三方服务时,由于未设置连接超时,导致消息队列消费速度减慢。通过创建自定义HttpMessageSender并设置HttpClientParams,实现了基于Xfire的webservice连接超时设置。主要步骤包括创建HttpMessageSender类和在调用端配置httpclient参数,如连接超时、socket超时等。
最低0.47元/天 解锁文章
1828

被折叠的 条评论
为什么被折叠?



