Отваливаются соединения с WEB-сервисами

1. SeverBaP 5 07.08.17 12:21 Сейчас в теме
В локальной сети есть два сервера один сервер (на Windows) имеет web-сервис для обработки данных, второй сервер (под centos'ом) отправляет данные для обработки в этот сервис. Данные из второго сервера отправляются посредством создания фонового задания на втором сервере и подключения внешней обработки в которой заложены все что необходимо. Обмены данными происходят корректно, но бывают моменты когда вешаются фоновые задания с этой внешней обработкой и обмен не происходит. Причем если попытаться открыть эту обработку (после того как фоновые задания с этой обработкой повисли) в клиенте и попытаться отправить данные, то в тонком клиенте при открытии этой обработки клиент вешается (на открытие этой обработки/формы ничего не завязано). Помогает только рестарт сервера - после чего начинает работать все в течении нескольких дней без сбоев, а потом опять происходить непонятное и приходится рестартовать сервер. Был подключен технологический журнал в нем конкретно что-то найти не получается ... подскажите в какую сторону смотреть - вангую в сторону роста сеансовых данных.
Вознаграждение за ответ
Показать полностью
Найденные решения
22. SeverBaP 5 08.09.17 17:44 Сейчас в теме
Данная проблема не повторилась на новом собранном сервере. (развернул на более свежей платформе 1С и версии постгресе)
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SeverBaP 5 07.08.17 12:43 Сейчас в теме
Первый сервер 1С 8.3.8.2088, второй сервер 8.3.6.2449.
13. SeverBaP 5 10.08.17 23:12 Сейчас в теме
В техлогическом журнале море вот таких сообщений:
31:07.182017-0,EXCP,2,process=rphost,ClientID=0,Exception=NetDataExchangeException,Descr='server_addr=any:1560 descr=98(0x00000062): Address already in use line=183 file=./src/DataExchangeServerImpl.cpp'
31:07.182018-0,EXCPCNTX,0,ClientComputerName=,ServerComputerName=,UserName=,ConnectString=
31:07.182019-20019,EXCPCNTX,1,SrcName=CONN,OSThread=-1940957376,process=rphost,ClientID=1,Txt=Outgoing connection closed
31:07.182020-50018,EXCPCNTX,0,SrcName=PROC,OSThread=-1940957376,process=rphost,RunAs=application
31:07.182022-0,SCOM,3,process=rphost,Func='setSrcProcessName(RHostRoot,RHostRoot)'
31:09.942000-0,CONN,3,process=rphost,ClientID=2,Protected=0,Txt='Accepted, client=(2)192.168.1.88:37828, server=(2)192.168.1.88:1561'
31:10.782002-0,SCOM,3,process=rphost,t:clientID=2,Func='setSrcProcessName(ServerJobExecutorContext,ServerJobExecutorContext)'
31:18.022000-0,CONN,3,process=rphost,ClientID=3,Protected=1,Txt='Accepted, client=(2)192.168.1.102:50011, server=(2)192.168.1.88:1561'
31:19.312003-0,CONN,2,process=rphost,t:clientID=3,Txt=eAPSENo
31:19.312015-0,EXCP,2,process=rphost,t:clientID=3,Descr='GSS-API error gss_acquire_cred: Unspecified GSS failure. Minor code may provide more information
'
31:19.312016-0,EXCP,2,process=rphost,t:clientID=3,Descr='GSS-API error gss_acquire_cred:
'
31:20.062001-0,SCOM,3,process=rphost,t:clientID=3,Func='setSrcProcessName(uim_m01,UIM_M01)'
31:20.112010-0,EXCP,4,process=rphost,p:processName=UIM_M01,t:clientID=3,t:applicationName=1CV8C,t:computerName=RemoteApp,t:connectID=5983,Exception=DataBaseException,Descr='Ошибка СУБД:
ERROR: syntax error at or near "application"
LINE 1: lock table pg_class in application share mode
непонятно что это вообще
14. dmpas 418 11.08.17 10:02 Сейчас в теме
(13)
ERROR: syntax error at or near "application"
LINE 1: lock table pg_class in application share mode


а постгрес точно с патчами от 1С ??? application lock нет в обычном постгресе, только в 1С-ном.
15. dmpas 418 11.08.17 10:04 Сейчас в теме
(13)
31:19.312016-0,EXCP,2,process=rphost,t:clientID=3,Descr='GSS-API error gss_acquire_cred:
'

Аутентификация ОС используется?
3. SeverBaP 5 07.08.17 12:51 Сейчас в теме
Процедура ОповеститьОбработчик(ВнешнийОбработчик,Событие,ОбъектСобытия,ДанныеДляОбработки,ВнешнееСобытие) Экспорт 
	
	Менеджер = ВнешниеОбработки;
	
	Попытка
		
		АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(ВнешнийОбработчик.ХранилищеОбработки.Получить());
	
		ИмяОбработки = Менеджер.Подключить(АдресВоВременномХранилище,,Ложь);
		
	Исключение
		
		ЗаписьЖурналаРегистрации("Создание внешнего модуля: ОШИБКА! '"+ОписаниеОшибки()+"'", УровеньЖурналаРегистрации.Предупреждение);
		ИмяОбработки = Неопределено;
		
	КонецПопытки;	
	
	Если НЕ ИмяОбработки = Неопределено Тогда
		
		ОбработкаОбъект = Менеджер.Создать(ИмяОбработки);
		
		Настройки = Новый Структура;
		
		Для Каждого ДанныеПеременных Из ВнешнийОбработчик.НастройкиМодуля Цикл 
			Настройки.Вставить(ДанныеПеременных.Переменная,ДанныеПеременных.ЗначениеПеременной);
		КонецЦикла;	                                                        
		
		Для Каждого ДанныеПеременных Из ВнешнийОбработчик.Команды Цикл 
			Настройки.Вставить(ДанныеПеременных.ИмяМетода,ДанныеПеременных.ЭлементСвязки);
		КонецЦикла;	                                                        
		Настройки.Вставить("СсылкаНаМодуль",ВнешнийОбработчик.Ссылка);
		Попытка
			
			ОбработкаОбъект.Настройки = Настройки;
			
		Исключение
			
			ЗаписьЖурналаРегистрации("Настройка внешнего модуля: ОШИБКА! '"+ОписаниеОшибки()+"'", УровеньЖурналаРегистрации.Предупреждение);

		КонецПопытки;

		Если НЕ ВнешнееСобытие Тогда 
			
			ОбработкаОбъект.ОбработатьВнутреннееСобытие(СокрЛП(Событие),ОбъектСобытия);
			
		ИНаче
			
			ОбработкаОбъект.ОбработатьВнешнееСобытие(ДанныеДляОбработки);
			
		КонецЕсли;
		
	КонецЕсли;
	
	УдалитьИзВременногоХранилища(АдресВоВременномХранилище);
	
КонецПроцедуры
Показать


На всякий случай в конце выполнения добавил УдалитьИзВременногоХранилища(АдресВоВременномХранилище);
4. SeverBaP 5 07.08.17 13:19 Сейчас в теме
Процедура ОбработатьВнутреннееСобытие(Событие,ОбъектСобытия) Экспорт
	
	Если Событие = "Изменение" Тогда // Обработка события изменения
		// обработка объекта Поступление товаров и услуг
		Если НЕ НеобходимоОбработатьСобытиеПоОбъекту(ОбъектСобытия) Тогда 
			Возврат;
		КонецЕсли;	
		
		СтруктураДанныхОтправки = Новый Структура;
		СтруктураДанныхОтправки.Вставить("ТипОбъекта",СокрЛП(ОбъектСобытия.Ссылка.Метаданные().Имя)); // фиксирование в сервисе что за объект 
		СтруктураДанныхОтправки.Вставить("Событие",Событие); // тип события
		СтруктураДанныхОтправки.Вставить("Объект",ПреобразоватьДокументКФорматуПередачи(ОбъектСобытия)); // подготовленный объект
		
		// Инициализация отправки данных в сервис
		Определения = Новый WSОпределения("http://****************************************/WSProcessingExternalEvents.1cws?wsdl", СокрЛП(Настройки.Логин),СокрЛП(Настройки.Пароль)); 
		
		Прокси = Новый WSПрокси(Определения, "ControlOfExternalModules", "WSImportDate","WSImportDateSoap");
		Прокси.Пользователь = СокрЛП(Настройки.Логин);
		Прокси.Пароль = СокрЛП(Настройки.Пароль);
			
		Результат  = Прокси.ImportDate(СтруктураДанныхОтправки);
		
		Если Результат.status = "error" Тогда 
			
			ЗначениеИзДанных = Результат.error;
			Попытка
				ИсключениеОписание = ЗначениеИзДанных;
			Исключение
				ИсключениеОписание = ОписаниеОшибки();
			КонецПопытки;
			
			ВызватьИсключение ИсключениеОписание;
			
		КонецЕсли;	
		
	КонецЕсли;	
	
КонецПроцедуры
Показать

Вот код самого обработчика передается текст
5. SeverBaP 5 07.08.17 13:29 Сейчас в теме
00:01.968002-1069995,CONN,0,process=rphost,t:clientID=14645,t:clientID=14645,t:computerName=servcentos,t:applicationName=BackgroundJob,t:connectID=14499,Calls=14404
00:01.968021-0,CONN,1,process=rphost,ClientID=14644,Txt=Incomming connection closed: long still

частенько вываливаются вот такие вот записи в тех журнале
6. dmpas 418 07.08.17 14:32 Сейчас в теме
Попробуйте для начала таймауты в WSПрокси и WSОпределения поставить. Может хотя бы зависать перестанут, тогда можно будет как-то отрабатывать эту ошибку и пытаться повторно отправить данные.
7. SeverBaP 5 07.08.17 14:36 Сейчас в теме
(6) Установил таймаут как 9 сек:
		Определения = Новый WSОпределения("http://***********/ws/WSProcessingExternalEvents.1cws?wsdl", СокрЛП(Настройки.Логин),СокрЛП(Настройки.Пароль),,9); 

буду мониторить
8. dmpas 418 07.08.17 14:40 Сейчас в теме
(7) В прокси тоже стоит поставить
9. SeverBaP 5 07.08.17 14:41 Сейчас в теме
10. SeverBaP 5 07.08.17 14:44 Сейчас в теме
Стоп точно ....
		Прокси = Новый WSПрокси(Определения, "ControlOfExternalModules", "WSImportDate","WSImportDateSoap");
		Прокси.Пользователь = СокрЛП(Настройки.Логин);
		Прокси.Пароль = СокрЛП(Настройки.Пароль);
		Прокси.Таймаут = 9;
11. SeverBaP 5 07.08.17 15:01 Сейчас в теме
		Прокси = Новый WSПрокси(Определения, "ControlOfExternalModules", "WSImportDate","WSImportDateSoap",,9);
		Прокси.Пользователь = СокрЛП(Настройки.Логин);
		Прокси.Пароль = СокрЛП(Настройки.Пароль);

Правильный код, иначе будет ошибка
12. SeverBaP 5 10.08.17 23:09 Сейчас в теме
Держалось несколько дней было все нормально и вот опять эта проблема рестарт опять все восстановил ...
16. SeverBaP 5 11.08.17 10:05 Сейчас в теме
Скорее всего установлен постгрес без него. Аутентификация ОС используется? - нет
17. SeverBaP 5 11.08.17 10:06 Сейчас в теме
Может еще какие-то логи выложить?
18. dmpas 418 11.08.17 10:12 Сейчас в теме +3 $m
Лучше сначала убедиться в постгресе.
20. SeverBaP 5 11.08.17 10:12 Сейчас в теме
21. SeverBaP 5 11.08.17 10:21 Сейчас в теме
(18) с патчем, установлена версия 9.2.1
19. SeverBaP 5 11.08.17 10:12 Сейчас в теме
настройки кластера и сервера
Прикрепленные файлы:
22. SeverBaP 5 08.09.17 17:44 Сейчас в теме
Данная проблема не повторилась на новом собранном сервере. (развернул на более свежей платформе 1С и версии постгресе)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот