Вопрос

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

A connection attempt failed because the connected party did not properly
respond after a period of time, or established connection failed because
connected host has failed to respond [IP Address removed]:80

Эта ошибка не возникает, когда я вызываю веб-службу на ферме из веб-приложения на своем локальном компьютере или когда я вызываю веб-службу на своем локальном компьютере из веб-приложения на ферме.

Есть идеи, почему возникает эта ошибка?

Это было полезно?

Решение

Решением моей проблемы было включение NAT на балансировщике нагрузки.

Запрос делался с сервера фермы к балансировщику нагрузки, затем балансировщик нагрузки отправлял этот запрос на один из серверов фермы (возможно, даже на тот же сервер, который его запросил).Проблема заключалась в том, что сервер, обрабатывавший запрос, пытался отправить ответ непосредственно обратно «запрашивающему клиенту», а не обратно в балансировщик нагрузки, поэтому сервер, отправивший запрос, просто игнорировал ответ, потому что он не был отправлен. отправлено балансировщиком нагрузки.При включении NAT все ответы отправляются обратно в балансировщик нагрузки, а затем балансировщик нагрузки отправляет ответ исходному клиенту.

Другие советы

Это всего лишь предположение, но может ли веб-сервер действительно видеть используемый IP-адрес?Если он находится на ферме за балансировщиком нагрузки, то этот IP-адрес может быть заблокирован самим балансировщиком нагрузки, брандмауэром или прокси-сервером.

Можете ли вы получить доступ к веб-серверу через удаленный рабочий стол и ping IP-адрес?

Стек TCP/IP на узле вашей фермы не будет перенаправлять вызов на IP-адрес балансировщика нагрузки, а автоматически преобразует его в локальный вызов по адресу 127.0.0.1:80 на конкретном узле фермы, который выполняет вызов. .Убедитесь, что ваши веб-серверы настроены для обработки этого случая.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top