компьютерный форум
Вернуться   Компьютерный форум > Программирование и вебстроительство > 1C (Все версии) > WEB расширение 1С 8.0


Ответ
 
LinkBack Опции темы Опции просмотра
Старый 28.07.2011, 07:36   #1
Пользователи
 
Регистрация: 28.07.2011
Сообщений: 1
По умолчанию

Приветствую. может кто сталкивался, помогите. Или давайте вместе подумаем что может быть...беда ведь

Была Платформа 1С:Предприятие 8.1, база в SQL, web-расширение установлено, IIS какой-то версии, framework 1.1
web-приложение, разработанное в среде Visual Studio 2003, связанной с базой. Через него мы подаем заявки в 1С. Все прекрасно работало несколько лет. Но господа из 1С вынудили перейти на платформу 8.2.
Сервер 1С: Предпрятия обновили. Скачали последнюю версии web-расширения, установили. При импорте метаданных появлилась закладка 8.2. вроде бы круто. в Web.config переписали версию:
key="ComConnectorVersion" value="Ver8_2"

сайт заработал. Заявки подаются. Вроде бы все как и раньше. Но! теперь с каждым днем все хуже и хуже. Появилась проблема - пропадает связь с базой, если вчера допустим это было 3 раза за день, то сегодня уже каждые пол часа. Когда пропадает связь с базой, сайт работает, стартовая страница пашет, аутентификацию не проходит к базе не подключается, ну и все вытекающие проблемы. Помогает либо перезагрузка сервера, либо рестарт службы IIS (вместе с подчиненными). Но каждые 30 минут- 1 час этим заниматься нет возможности.
Кто сталкивался? Почему после перехода на 8.2 и обновления компоненты web-расширение, появилось переодический разрыв связи с базой?

Вопрос №2
Почему такая конструкция вызывает множество COM-соединение, растут на дрожжах, в базе бывает порой по 30 COM-соединений


object Table = (object)_1C.V8.Data.V8.Call(connection,connection. Connection,"Slots",Дата.Value,НомерКонтейнера.Valu e,Тип

// получаем количество строк
decimal CountS = (decimal)_1C.V8.Data.V8.Call(connection, (ComObject)Table, "Количество");

// делаем обход по строкам
for (int j = 0; j < CountS; j++)
{
// получаем текущую строку
object TekStroka = (object)_1C.V8.Data.V8.Call(connection, (ComObject)Table, "Получить",j);

ListChoiceItem lci = new ListChoiceItem();
lci.Text = (string)_1C.V8.Data.V8.Call(connection, (ComObject)TekStroka, "Получить", 5);
lci.StringValue = lci.Text;
Slot.ListChoice.Add(lci);
V8.ReleaseComObject(TekStroka);
}

V8.ReleaseComObject(Table);


не помогает даже ClearPool.






Malton вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
28.07.2011, 07:36
Техник
реклама
По умолчанию

Старый 30.08.2011, 03:47   #2
Пользователи
 
Регистрация: 19.06.2009
Сообщений: 5
По умолчанию

А соединение закрывать не пробовали после сих действий?
Посмотрите тему прилепленную про зависшие соединения.

К первой проблеме - в свойствах IIS выставите перезапуск пула каждые 3 часа, вероятно приложение спроектировано так, что есть утечки памяти, было, нечто подобное на старых релизах дот нет(а)
Drock вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Ответ


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Вкл.



Текущее время: 15:42. Часовой пояс GMT.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot
Content Relevant URLs by vBSEO 3.5.0 RC2