Google app engine 如何全局设置URL抓取超时?

Google app engine 如何全局设置URL抓取超时?,google-app-engine,timeout,jax-rs,urlfetch,Google App Engine,Timeout,Jax Rs,Urlfetch,我正在开发一个在AppEngine上运行的应用程序。我的任务之一是调用web服务。为此,我使用JAX-RS。然而,其中一个调用达到了AppEngine设置的超时(5秒)。我想将超时时间增加到10秒,但我无法修改它。实际上,JAX-RS不允许捕获创建的HttpConnection对象 我的问题是:是否可以全局配置URL抓取超时 谢谢我不确定您使用的是哪种JAX-RS堆栈,但对于Jersey,您可以执行以下操作: 需要注意的是,在GAE上创建Jersey客户端的速度相对较慢,因此您可能希望使该

我正在开发一个在AppEngine上运行的应用程序。我的任务之一是调用web服务。为此,我使用JAX-RS。然而,其中一个调用达到了AppEngine设置的超时(5秒)。我想将超时时间增加到10秒,但我无法修改它。实际上,JAX-RS不允许捕获创建的HttpConnection对象

我的问题是:是否可以全局配置URL抓取超时


谢谢

我不确定您使用的是哪种JAX-RS堆栈,但对于Jersey,您可以执行以下操作:




需要注意的是,在GAE上创建Jersey客户端的速度相对较慢,因此您可能希望使该客户端成为实例中的静态变量。(这是一个线程安全的对象,因此没有问题)但这会给实例的加速增加2-5秒

import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.config.ClientConfig;
import com.sun.jersey.api.client.config.DefaultClientConfig;
ClientConfig cc = new DefaultClientConfig();
cc.getProperties().put(ClientConfig.PROPERTY_THREADPOOL_SIZE,10);
Client client = Client.create(cc);
client.setConnectTimeout(1000);
client.setReadTimeout(15000);