powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Indy 10. Host not found?
15 сообщений из 15, страница 1 из 1
Indy 10. Host not found?
    #39601846
snow_globe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую всех. Я не зря поставил в заголовке темы знак вопроса. Объясню почему.
Постараюсь описать суть проблемы.

Есть несколько потоков отправки на разные адреса. При отправке используется IdHTTP. Indy 10.
Есть несколько машин на которых эта отправка происходит. Но существует некоторая проблема. Не знаю с чем.
Иногда нужно при отправке менять адрес, можно в настройках. На большинстве это проходит на ура, все работает отлично. Но вот на парочке, что-то происходит не так. При первой же отправке сообщения на новый заданный адрес Indy выдает Host not found. Хотя с этим же адресом на остальных машинах все нормально отправляется.
Более того на этих проблемных машинах выдается ошибка при первой же отправке, так еще и на остальные адреса начинает выдаваться такая же ошибка Host not found. При смене проблемного адреса на прежний, все отправляется прекрасно, без проблем и ошибок.

Подскажите пожалуйста, с чем это может быть связано. Ситуация очень непонятная.
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39601856
sql2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
snow_globe,

сетевые настройки\прокси\hosts?
ping разрешен\кто смелый настолько, чтобы проверить?

Сверять конфигурацию сетевых настроек - не предлагать?
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39601909
snow_globe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sql2012,

Предлагать можно все. Но все гораздо сложнее. Это не локальная сеть и даже не наша. Ну т.е. конечно наша, наших пользователей. :) И дело в том, что все эти настройки на стороне пользователя. Сам пользователь делает настройки, т.е. меняет адрес отправки удаленно. И всякие там пинги он даже и не делал. Ему просто не верится, что это может быть что-то не так у него. А это у нас что-то не так. Программа криво работает.
Кстати машины выходят на связь через GPRS-модемы.
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602021
sql2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
snow_globe,

тех.поддержку оказывали ранее или это первый продукт?
нет понимания как работает используемый "код"?

что с другими публичными адресами на проблемном ПК?
самодиагностики в софте нет?
что дает tracert\ping и т.п. до нужного и до "работающего публичного адреса"?
какие фильтры\порты у компании разрешены и т.п.?
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602092
snow_globe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sql2012,

С пользователем работаем давно. Понимание кода есть, но только своего. Я просто понять иногда не могу как работает Indy.
Вот хоть взять настройку этого адреса.
Грубо говоря задали настройку в конфигурационном файле, считали, передали в метод Post(Url,SourceStream, ResponseContentStream); Все!
Отправки происходят в разных потоках. Поток создался, передали параметры, получили результат, поток завершился FreeOnTreminate.
Стоит застопориться первой отправке и начинается ступор всего и вся! Проходит первая отправка и все идет как надо. Не понятно почему так происходит. Ведь потоки и отправки не зависимы!

А на проблемном ПК, как я уже говорил, есть стандартные наши адреса и адреса которые прописывает пользователь. И те и другие публичные.
Про ping/tracert этих адресов ничего сказать не могу, т.к. вся настройка этих машин происходит удаленно. И даже не через удаленный рабочий стол.
Про фильтры/порты тоже самое.
Ведь самая главная загвоздка и основание пользователя и он, кстати, прав. Ведь не может при одном! проблемном адресе ломаться всё! Но по факту это так.
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602261
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
snow_globeНе понятно почему так происходит. Ведь потоки и отправки не зависимы!

т.е. "SourceStream, ResponseContentStream" у каждого потока свой, отдельный от других потоков?

возможно у Инди пул потоков переполняется, вам кажется что "застопорилась первая отправка", а на самом деле застопорилось N первых отправок, пул исчерпался, и пока старые потоки не умрут по таймауту новые нае создаются.
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602321
snow_globe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Arioch,

Но как этот пул потоков может переполняться? Вот если даже после перезапуска ПО отправка происходит с "нормальным" адресом, то все идет нормально. Если так же после перезапуска задать "проблемный" адрес, то все стопорится сразу же. И остальные отправки возвращают ошибку Host not found!
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602639
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно попробовать логгироние подключить, эврикалог. Возможно больше информации будет.
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602693
snow_globe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
makhaon,

А что покажет эврикалог? Куда отправляются запросы или стек вызовов? Она это будет делать все время или только во время какой-то ошибки? Просто насколько она будет полезна в такой ситуации?

Появились некоторые подвижки.

Перевел отправку с "проблемным" адресом с Indy на ICS. Возможно из-за того что на машине именно GPRS-модем, он не сразу выходит на связь. И в этот раз тоже самое. С ICS повторилась, судя по возвращаемым ей ошибкам, та же история. Она вернула ошибку 11001.
Но через некоторое время все таки на связь вышла! Т.е. проблемный адрес через ICS проходит! И остальные отправки идут!

Но не все так радужно.
Как я упоминал раннее, что у нас свое. Мы предоставляем его пользователям и они его используют под свои цели и нужды. Это ПО позволяет собирать статистическую информацию, загружать логи, или иные файлы с ПК пользователей, отправлять обновления. Это могут делать как разработчики, так и сами пользователи.
И вот соответственно это все настраивается. Некоторые пользователи хотят иметь свои хранилища файлов, иметь свои мониторинги статистики. И конечно мы идем им на встречу.
И вот пожалуйста - результат!

Но это было отступление. Вернемся к проблеме.
Проблема с настройкой адреса на мониторинг статистки. Пользователь решил настроить свой мониторинг статистики. Чтобы все запросы шли через его адрес. Но при этом не отдельный мониторинг, а чтобы запросы шли через него и на наш адрес. Чтобы он все видел. Типа дубликата. Он этот адрес настраивает, отсылает на свои ПК. У него 25 ПК. 23 из них работаю с этим адресом, а 2 начинают вытворять чудеса которые описывал. Теперь повторюсь. Тогда еще отправка была на Indy. С Indy переделал отправку статистики на этот адрес через ICS. Отправка стала проходить и остальные потоки стали тоже проходить.
Казалось бы что еще нужно? Вроде бы все хорошо отправки работают. Но с ПК иногда нужно и логи качать и обновления закачивать.
И вот при попытке скачать лог или послать обновление, ПК пропадают со связи. Эти пара ПК.
А все это скачка и загрузка выполняется в Indy. Загрузка файлов на ПК и на сервер выполняется через IdHTTP. Загрузка и выгрузка также происходит в отдельных потоках.
Настройка в конфигурационном файле выглядит примерно следующим образом:
Код: plaintext
1.
2.
3.
[infoserver]
host=//наш адрес сервера
UserURL=//адрес пользователя
Проблема возникает именно тогда когда пользователь указывает свой адрес статистики через который идут запросы. Как только эти параметр UserURL удаляется, и остается только наш адрес статистки на прямую, то все запросы, все загрузки и выгрузки идут на ура!

Но как такое может быть? Ведь это совершенно разные адреса! И даже можно сказать разные компоненты отправки! Можно было бы погрешить на Indy, то она там чего-то не освободила и все. Но ведь статистика идет через ICS, а файлы загружаются через Indy, но проблемы осталась!

Помогите разобраться!
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602781
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
snow_globe,

авторА что покажет эврикалог? Куда отправляются запросы или стек вызовов? Она это будет делать все время или только во время какой-то ошибки? Просто насколько она будет полезна в такой ситуации?

Стёк вызовов, если немного дописать, то и запросы. Будет делать во время исключения. Если нормально настроить - то есть шансы, что чем-то поможет. Качай триал и пробуй. Есть еще подобный софт Mad Exception. Хотя нам как-то EL удобнее оказался.
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602782
Cobalt747
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
snow_globe,

На проблемную машину ставь WireShark и смотри что там происходит
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39602793
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тебе нужна дополнительная информация, в общем. Иначе гадание по гуще. Возможно рано или поздно что-то получится. Но если хочется скорее рано, чем поздно - нужно искать причину. Врятли кто-то из хрустального шара тебе готовый ответ скажет. Может вирусы/антивирусы/фаерволлы виноваты. У нас с сетями то постоянно из-за них проблемы. Вплоть до того, что некоторые антивирусы то ли из-за багов, то ли из-за фич, пакеты могут портить. Всякого уж насмотрелся. А может и твоё, кто знает.
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39603461
snow_globe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На проблемную машину ни какие WireShark-и и т.п. установить не получится. Только если это сделает сам пользователь. Но пользователь уверен, что проблема в программе! Ведь есть необъяснимое поведение программы! Вот как объяснить пользователю почему так происходит? Какие-то фаерволы, сетевые настройки, антивирусы глючат? Но какие, и что с ними может быть не так?
Ведь как объяснить то, почему разные! потоки на совершенно разные адреса спотыкаются и не хотят работать вместе? Почему например если один адрес проблемный, так на другие-то не отправляется? Какие-то глобальные сетевые настройки к которым компоненты, такие как Indy и ICS, обращаются?
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39603467
sql2012
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
snow_globeНа проблемную машину ни какие WireShark-и и т.п. установить не получится. Только если это сделает сам пользователь. Но пользователь уверен, что проблема в программе! Ведь есть необъяснимое поведение программы! Вот как объяснить пользователю почему так происходит? Какие-то фаерволы, сетевые настройки, антивирусы глючат? Но какие, и что с ними может быть не так?
Ведь как объяснить то, почему разные! потоки на совершенно разные адреса спотыкаются и не хотят работать вместе? Почему например если один адрес проблемный, так на другие-то не отправляется? Какие-то глобальные сетевые настройки к которым компоненты, такие как Indy и ICS, обращаются?

Если уверен в "своем коде":
пиши тестовую утилиту, 1 поток, 1 адрес
запускай свою программу - глючит?
запускаешь тестовую (2 процесса)
а) с работающим адресом
б) с проблемны адресом

глючит с проблемным адресом? вероятно проблема "не в твоих программах".

сейчас выглядит как-то так:
какие-то другие программы (глючат... пишешь) мешают моей работать в многопоточности и т.п... она спотыкается..
...
Рейтинг: 0 / 0
Indy 10. Host not found?
    #39603555
Фотография makhaon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
snow_globe,

Повторюсь. Пробуй EurekaLog/Mad Except. Ставить как раз ничего не нужно. Так же можно попробовать максимально логгировать соединения, может чем-то помочь. У нас, например, три уровня логгирования + побайтное логгирование входа/выхода. Протокол сложный. У нас часто бывает по 20-30 потоков на вход выход и больше. В сложных случаях, бывает, сильно помогает (если проблема на нашей стороне, конечно).
Если юзера некотонтактные - это, конечно, хуже всего.

авторИ всякие там пинги он даже и не делал

Он не должен ничего делать. Всё вполне можешь сделать ты.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Indy 10. Host not found?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]