|
Зависает регламентное задание работы с ВебСервисом | ☑ | ||
---|---|---|---|---|
0
sabiony
24.01.13
✎
13:36
|
Уже не первый раз подвисает регламентное задание по передаче данных через вебсервис в другую базу.
Вот и сегодня. В 10-00 зависло регламентное задание, через консольку не убивается, в консоле сервера висит в блокировках. Приходится через внешнюю обработку дергать метод регламентного задания, но это не дело. Ясно конечно, что жизнь портит вебсервис, который возможно не отвечает, и поэтому все висит. Еще на этапе тестирования и ручного дерганья сервиса он редко, но зависал. Причины не понятны, в следующую секунду уже могло быть все хорошо. Настройка завершения регламентного задания через 360 сек. не помогла. Настройка создания WSПрокси с таймаутом в 300 сек не помогла. Вот вопросы: 1. Как бороться с зависшими регламентными заданиями? Бывало ли у вас подобное? как побороли? 2. Сталкивались ли вы с зависшими вебсервисами? |
|||
1
sabiony
29.01.13
✎
14:47
|
Вдруг кто-то подскажет, исходя из новых моих данных.
Чт (24.01) - зависали вебсервисы Пт (25.01) - все отработало как часы Пн (28.01) - все отработало как часы Вт (29.01) - опять 25...зависают. Причем самое интересное, что я отловила и в браузере: 1. Открываю WSDL-ку, 2. Запрашивается логин и пароль для подключения к базе-приемнику 3. Судя по журналу регистрации базы-приемника пользователь подключается 4. Все виснет и WSDL-ка не получается, и пользователь так и остается висеть в базе-приемнике. Хотя если бы не зависла, то сеанс завершился с получением WSDL. Когда в момент сбоя попробовала добавить WS-ссылку в конфигураторе, то сначала также все подвисло, а потом выдалась вот такая ошибка: ******************************* Ошибка при выполнении файловой операции 'http://WebAgent:xxxxxxx@***/v82_***/ws/Update***.1cws?wsdl' по причине: Ошибка работы с Интернет: произошел таймаут при ожидании ответа шлюзу (504). <HTML><HEAD> <TITLE>ERROR: The requested URL could not be retrieved</TITLE> </HEAD><BODY> <H1>ERROR</H1> <H2>The requested URL could not be retrieved</H2> <HR> <P> While trying to retrieve the URL: <A HREF="http://***.ru/v82_***/ws/Update***.1cws?">http://***.ru/v82_***/ws/Update***.1cws?</A> <P> The following error was encountered: <UL> <LI> <STRONG> Read Timeout </STRONG> </UL> <P> The system returned: <PRE><I> [No Error]</I></PRE> <P> A Timeout occurred while waiting to read data from the network. The network or server may be down or congested. Please retry your request. <P>Your cache administrator is <A HREF="mailto:root@***.ru">root@***.ru</A>. по причине: Ошибка работы с Интернет: произошел таймаут при ожидании ответа шлюзу (504) *********************************** Спустя время WSDL-ка получилась без проблем. Куда дальше копать? |
|||
2
Serginio1
29.01.13
✎
14:55
|
Делай в цикле в Попытка исключение.
|
|||
3
sabiony
29.01.13
✎
16:05
|
Проблема в том, что зависает на строчке "Новый WSОпределения".Как я понимаю, программа подвисает, ожидая ответа и не получая его.
Попытка ВСОпределение = Новый WSОпределения(МестоположениеВСДЛ,ИмяПользователяВСДЛ,ПарольПользователяВСДЛ, Таймаут); Исключение [...] |
|||
4
Serginio1
29.01.13
✎
16:19
|
(3) Тоже смутило, что исключение не вызывается в регламентном задании, тогда в консоле бы было видно что задание не завершено из за ошибки.
Но на Ws ссылке все таки исключение выдает. Попробуй через WSСсылки.ТвойСервис.СоздатьWSПрокси( с таймаутом |
|||
5
sabiony
29.01.13
✎
16:24
|
Сейчас у нас динамически WSDL-ка получается, а не жестко зашита в WSСсылке.
Попробую на тесте сделать WSСсылку и при проблемах попробовать создать WSПрокси, интересно, как отреагирует. Я вот думаю, не может ли быть связано с настройками IIS ? Может, он перегружается как-то? Как-то можно узнать количество подключений к IIS в текущий момент времени? |
|||
6
Serginio1
29.01.13
✎
16:54
|
Ну ссылка то идет не через IIS. IIS это сервер, а у тебя клиент через SOAP подключается к стороннему серверу
|
|||
7
sabiony
29.01.13
✎
17:05
|
Разве при запросе WSСсылки IIS не дергается? Ведь он подключается к базе-приемнику чтобы WSDL получить, причем подключается успешно, но в момент получения именно WSDL-ки виснет...а WSDL-ку я так поняла берет с помощью IIS. Нет все же?
|
|||
8
Serginio1
29.01.13
✎
17:42
|
Если и есть проблемы, то только на сервере. Для успокоения души, запусти обработку с клиента и вызывай подчлючив процедуру через ПодключитьОбработчикОжидания
|
|||
9
sabiony
01.02.13
✎
10:30
|
Новости с фронта.
Вчера был очередной день глюков. У меня уже закономерность -если утром я вижу зависшее регламентное задание по работе с вебсервисами 1С хотябы в одной базе с 7 до 9 часов (чаще всего уже виснет на 1-3 запуск с начала работы), то весь день будут проблемы. Что пробовала делать: 1. Подключение через статичную WSСсылку не решило проблемы. 2. Перезапускала IIS когда были зависания, проблемы не решило. 3. По рекомендации Serginio1 сделала обработку. запустив подключение на клиенте - все отлично отработало с 14 до 18, хотя в это же время зависло обычное регламентное задание. Помониторю в проблемные дни еще, посмотрим, на сколько все хорошо работает. Что хочу попробовать сделать: 1. Поднять базу на другом сервере и дергать оттуда, если проблема останется, то поиграться с настройками. Посмотрим, что из этого выйдет. Мне не нравится, что таймаут не срабатывает совсем, по сути он и должен решать эти все проблемы. Нашла похожую проблему в 2010: v8: Прерывание выполнения процедуры по таймауту |
|||
10
Serginio1
01.02.13
✎
10:33
|
Пиши в службу поддержки
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |