Как я могу решить проблему с сетью приложений? - PullRequest
0 голосов
/ 18 декабря 2009

Я помог с приложением, которое имеет пару тысяч развертываний. Это приложение .NET 2 Winforms.

Существует несколько функций, которые требуют от приложения «звонить домой» к некоторым пользовательским веб-службам, которые мы написали для обновления информации о продукте.

В течение нескольких лет это работало нормально. Периодический звонок в службу поддержки, который мы получим, будет связан с брандмауэром, который мы исправим, добавив исключения для нашего приложения.

В этом году нам поступают звонки, когда наше приложение не может подключиться к нашим веб-службам, но НАСТОЯТЕЛЬНО не связано с брандмауэром.

Происходит разрешение имени домена, и страницу для веб-службы можно загрузить в браузер. Тем не менее, наше приложение полностью не может подключиться к веб-сервису.

За свою жизнь я не знаю, как решить эту проблему.

Может кто-нибудь предложить несколько советов по устранению неполадок и устранению этой проблемы. Любое руководство приветствуется. Я имею возможность участвовать в некоторых из этих клиентов, чтобы получить удаленный доступ к их машинам.

Сет

Ответы [ 3 ]

1 голос
/ 18 декабря 2009

Это звучит как рассол, как уже упоминали другие, вы всегда можете создать диагностическое приложение и посмотреть, какие выдачи возвращаются / исключения. Вот несколько мыслей ...

  • Приложение даже вызывает сервер приложений, на котором размещены веб-сервисы? Хост служб видит входящие соединения с этих клиентских ПК (проверьте журналы доступа)?

Давайте проверим со стороны клиента, вы можете просто использовать командное окно на клиентском компьютере и использовать команду netstat -a для просмотра всех TCP / UDP-подключений к компьютеру и с компьютера, найдите там ваш хост веб-сервиса, в идеале запустите Эта команда близка к тому, когда приложение пытается позвонить домой. (Можете ли вы инициировать эти «телефонные звонки» вручную?)

Еще один более сложный подход - Wireshark , установите там фильтр захвата, чтобы получать только трафик на ваш внутренний сервер, и, если это не SSL, вы можете даже пойти так далеко, что увидите SOAP и / или XML, который передается по сети (это помогает, если вы подключаетесь, но есть проблема с конвертом / сообщением / форматом)

Другая возможность - проблемы с прокси, но если вы используете default и они получают доступ через браузер, это не так вероятно. В зависимости от того, как закодировано это приложение, вы можете показать какой-то код, где эти вызовы совершаются?

0 голосов
/ 18 декабря 2009

Не могли бы вы создать небольшое тестовое приложение с кучей информации об отладке / ведении журнала, чтобы вы могли запустить один из ваших клиентов, у которого возникла проблема? Если вы пишете тестовое приложение, которое подключается так же, как ваше реальное приложение, вы можете регистрировать каждый отдельный шаг и исключение в файле журнала, и это может помочь вам понять, что происходит. Вам нужно будет найти клиента, который готов работать с вами, но с несколькими тысячами развертываний должен быть кто-то, кто готов помочь вам.

Если вы разместите фрагмент кода, который звонит домой, у нас могут возникнуть более конкретные идеи.

0 голосов
/ 18 декабря 2009

Когда вы говорите, что он не может подключиться, вы имеете в виду, что он достигает веб-службы (проверено протоколами IP / подключений), но не может получить страницу или никогда не достигает веб-службы?

Если это повторяется, как насчет того, чтобы собрать небольшое тестовое приложение, которое просто вызывает ваш веб-сервис, выполняя как можно больше отладочных журналов и запускать его с одного из этих удаленных клиентов? (не уверен, что вам сказать, если это работает .. но это может указывать на что-то само по себе. Возможно, проверить на другом порту.)

Нет прокси в сети этих клиентов, которую использует IE, а ваша служба - нет?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...