2009-12-18 94 views
0

我已經協助了一個有幾千個部署的應用程序。這個應用程序是一個.NET 2 Winforms應用程序。如何解決應用程序網絡問題?

有幾項功能需要應用程序「回家」給我們編寫的一些自定義Web服務來更新產品信息。

幾年來,這工作得很好。我們偶爾會得到的支持電話會與防火牆相關,我們將通過添加外部應用程序的例外來解決這個問題。

今年我們正在接到一些電話,其中我們的應用程序無法連接到我們的網絡服務,但是確保沒有與防火牆相關的問題。

域名解析正在發生,Web服務的頁面可以加載到瀏覽器中。儘管如此,我們的應用程序完全無法連接到Web服務。

對於我的生活,我不知道如何解決這個問題。

任何人都可以提供一些關於如何排除故障和調試此問題的建議。歡迎任何指導。我能夠對這些客戶中的一些進行副駕駛以遠程訪問他們的機器。

賽斯

+0

那麼......找出問題的運氣呢?只是好奇... – curtisk 2009-12-22 16:54:21

+0

curtisk,感謝問。截至目前...沒有運氣。我甚至與一位顧客做了wirehare事情......但是因爲我在連接到副駕駛時做了這件事,所以流量被加密了。至少沒有提及我們Web服務的IP。儘管如此,仍然在努力。謝謝你的幫助。賽斯 – 2009-12-22 19:13:47

回答

1

這聽起來像一個泡菜,正如其他人提到的,你總是可以創建一個診斷應用程序,看看是什麼樣的退貨/異常被拋出。這裏有一些想法...

  • 應用程序是否調用了託管webservices的應用服務器?服務主機是否看到來自這些客戶端PC的傳入連接(檢查訪問日誌)?從客戶端

讓我們來看看,你可以簡單地在客戶機上使用命令窗口,並使用netstat -a命令來查看和從機的所有TCP/UDP連接,查看您的Web服務主機在那裏,理想在應用程序嘗試呼叫回家時運行此命令。(你可以觸發這些「手機之家」手工調用了?)

另一種更復雜的方法是Wireshark,設置捕獲篩選那裏唯一的交通拿起你的後端服務器,如果它不是SSL,你甚至可以去當只要看到穿過線路的SOAP和/或XML(這有助於連接,但信封/信息/格式有問題)

另一種可能性是代理問題,但如果您使用默認情況下,他們通過瀏覽器訪問它,這不太可能。根據這個應用程序的編碼方式,你可以在這些調用的地方顯示一些代碼嗎?

0

當你說無法連接,你的意思是它到達Web服務(通過IP /連接日誌驗證),但無法檢索頁面,或者說,它永遠不會到達web服務?

如果它是可重複的,那麼把剛纔調用web服務的小測試應用程序放在一起,儘可能多地執行調試日誌記錄,然後從其中一個遠程客戶端運行它? (不知道該怎麼告訴你它是否工作..但這可能表明它本身,也許在另一個端口上測試。)

這些客戶端的網絡中沒有代理服務器使用IE,而您的服務不是?

0

您可以使用大量的調試/日誌記錄信息構建一個小型測試應用程序,您可以獲得運行問題的客戶端之一嗎?如果您編寫的測試應用程序與您的實際應用程序以相同的方式連接,那麼您可以記錄日誌文件的每一個單獨步驟和例外情況,這可能會幫助您瞭解正在發生的事情。你需要找到一個願意和你一起工作的客戶,但是在幾千次部署中,應該有一個願意幫助你的人。

如果你發佈了一個打電話給家裏的代碼,我們可能會提出一些更具體的想法。

相關問題