2010-08-13 32 views
0

如果我有一個服務可以進行RPC調用(比如說web服務,或者平靜的服務,或者只是爲了抓取url等數據),我可能會在5秒後超時嗎?您可以在x秒後進行rpc呼叫超時嗎?

我不希望它掛起,然後崩潰,如果遠程服務已關閉,而是嘗試x秒,如果它關閉,然後繼續進行下一個遠程服務調用。

+0

你能安排該服務?例如,如果您使用的是基於Windows的操作系統,那麼您可以使用任務計劃程序來安排它嗎?請提供更多細節。 – 2010-08-13 19:06:04

回答

0

的RPC客戶端庫通常有可選的超時參數可用。如果請求沒有在需要的時間內完成,客戶端庫只需關閉連接。這些協議本身可能沒有超時。

你是如何做你的RPC類的?你正在使用什麼庫?

0

東西:

DefaultHttpClient httpClient = new DefaultHttpClient(); 
HttpParams params = httpClient.getParams(); 
HttpConnectionParams.setConnectionTimeout(httpParams, connectionTimeoutMillis); 
HttpConnectionParams.setSoTimeout(httpParams, socketTimeoutMillis);