2009-06-12 39 views
1

我使用webservices在java中實現項目,我需要弄清楚服務是否在特定的主機端口上運行。最快的方法來確定是否可以訪問遠程主機

我能想到兩個方法的 1.Sockets 2.URLConnection類 有1秒超時

3.Web服務呼叫可否請你quide我最有效的方法。

在此先感謝。

回答

1

那麼,他們會給你不同程度的準確性。

如果您只是試圖找出是否有任何東西在正確的端口上進行偵聽(以及是否可以到達端口),那麼使用套接字進行連接是最合適的方式。

如果您試圖找出是否有Web服務器偵聽端口,那麼URLConnection是適當的。

如果您試圖檢查預期的Web服務是否在端口上偵聽,然後進行Web服務調用(最好是廉價的,沒有副作用 - 理想情況下只是爲了「ping」 )是理想的。

你想要什麼?就個人而言,在大多數情況下,我更喜歡第三種選擇 - 它提供最多的信息。

+0

感謝您的意見jon.I更喜歡第三種選擇。我使用Web服務存根類的對象來進行調用(一個簡單的方法,應該在一秒內返回),並有1秒的超時時間。但結果似乎有所不同。有時它很快,有時需要很長時間。任何想法爲什麼會發生這種情況? – sirius 2009-06-12 09:29:41

相關問題