Iis зависает при запуске 1с

Обновлено: 05.07.2024

Возьмем для примера веб-сервер на базе MS IIS с публикациями баз 1С. Бывают случаи, когда сеансы пользователей зависают. Например, при использовании веб/тонкого клиента 1С.

Одно дело — клиент-серверный вариант, с применением СУБД. С ним проще. Открываете административную консоль и через список закрываете эти зависшие сеансы.

В случае файловой базы все не так тривиально. В Конфигураторе вы можете видеть эти якобы активные сеансы, но отдельной команды в интерфейсе на закрытие — попросту нет.

Стандартная рекомендация — перезапуск веб-сервера. В принципе, она должна помочь, и зависшие сеансы на файловых базах очистятся.

Но, на практике выполнить сложнее, т. к. баз бывает несколько и ведется активная работа других пользователей. Могут быть ошибки и потери связи. Плюс недовольства сотрудников, что их работу прервали.

Какое может быть решение? Один из выходов — более тонкая настройка IIS.

Сделать так, чтобы каждая опубликованная база (приложение) выполнялась в отдельном пуле приложений. По умолчанию все публикации «привязываются» к DefaultAppPool.

Выберите время и настройте IIS, чтобы каждой информационной базе был сопоставлен отдельный пул.

Или сгруппируйте базы так, как вам удобно, чтобы сократить количество пулов. Выходит, что базы будут не в одной «куче», а по отдельности.

  1. Откройте консоль «Диспетчер служб IIS».
  2. В левой части выберите «Пулы приложений», а справа по команде «Добавить пул приложений…» зарегистрируйте новый пул с настройками, аналогичными пулу по умолчанию. Добавьте понятное имя, например, по названию публикации ИБ.
  3. Перейдите в список опубликованных баз.
  4. Выберите ИБ, через «Основные настройки…» укажите новый пул из ранее созданного в п. 2.
  5. Повторите шаги 1-4 для других информационных баз при необходимости.

Теперь, когда появляется задача по закрытию зависших сеансов в 1С — вы перезапускаете соответствующий пул, а не веб-сервер. Таким образом не мешаете своим коллегам работать с базами.

У меня возникает та же проблема. Платформа 1С 8.3.6.2237
В релизе 8.3.6.2363 исправили следующую ошибку:

Может быть это оно?
(1) Joker2705,

(8) Q-Q, у нас отключено обновление индекса полнотекстового поиска. (8) Q-Q, а почему "Обновление индекса полнотекстового поиска" у тебя запускается постоянно? индексируй разово на ночь и посмотри, как проблема решиться (18) Frogger1971, после того как поставил Обновление индекса полнотекстового поиска раз в сутки, частота проявления проблемы значительно уменьшилась Посмотрите журнал событий, может там ответ, или доп. информация. Коллеги, такая же проблема. После установки платформы 8.3.6 постоянно подвисает iis. Кто нибудь еще сталкивался с этим явлением? До этого все работала как часы. (5) its_33, Сталкивались, и с переходом с 8.3.4 на 8.3.5, и с 8.3.5 на 8.3.6, боролись долго, в первом случае танцы с бубном продолжались два дня, что-то в итоге помогло, а потом поставили Апач и забыли о проблемах. (6) alexdm, у меня обратная ситуация. В 4-х офисах стоял Апач и через него опубликованы базы (БП 3.0, ЗУП 3.0, УТ 11).
Началась полная жесть - 1С с ошибкой закрывается; 2-3 пользователя в 1-й базе работают без проблем - 1 зашел во 2-ю базу - все вылетели; периодические зависания и т.д. и т.п.
При чем 1С с ошибкой на клиенте в день по нескольку раз. А бывало и в течении часа 4-5 раз.
В общем вынужден был перевести на IIS. 1 офис остался на Апаче - работают в целом нормально. Но там одна база. (5) its_33, Та же проблема, после перехода на 8.3.6. (несколько раз обновлял, сейчас уже 8.3.6.2363) баз УТ 11.1 периодически (до нескольких раз в день) зависает. Причем даже не перестартует IIS, приходится полностью перезагружать компьютер. Сегодня обновил на 3.7.1845 буду смотреть. Дурдом, на IIS у меня тоже вторая база время от времени виснет, причем нет никакой закономерности. Апач перезагружается по 5 раз на день с одной только строчкой в логах: Parent: child process exited with status 255 -- Restarting. Ну в принципе я знал, что эти (далее следуют нецензурные выражения как в 3d vnand в несколько слоев) доберутся и поломают веб сервер, дело времени. это уже проблема не веб-сервера а в платформе 1с, обновите на новую платформу или конфигурация позволяет поставте предыдущую На новой платформе тоже самое, а на старую 8.3.5 уже не получиться вернуться. У нас проблема решилась путем отказа от виртуальной машины, поставили серверную ОС, и все работает как часы, иногда подвисает, но быстро отпускает))) Поставил 8.3.7, та же ерунда, зависает что на IIS 7, что на Apache22 Поставил Обновление индекса полнотекстового поиска раз в сутки. Проблема сохранилась.
Так же пробовал менять время засыпания пассивного сеанса и время завершения спящего сеанса.
Куда копать, какие логи читать?
С проблемой живем почти год. Все исправно обновляем. Всё лиценз. На серверную платформу денег не дают( У меня такая же проблема только с Апачем на самописной конфигурации. Скорее всего проблема в фоновых заданиях. Потому что когда их не было, всё работало хорошо.
Ситуация аналогичная, база зависает только одна, если есть еще опубликованные базы, они работают нормально.
При попытке обновить конфигурацию на зависшей базе, конфигуратор зависает, до того как не остановишь апач.
Т.е. вероятно зависает какое-то соединение с базой. Это наблюдается после некоторого простоя работы в программе.
Уже 3 месяца борюсь, не знаю как решить. На 8.3.8.1784 проблема даже усугубилась. Похоже они специально для пользователей файловых баз свинью подложили, так как те, кто купил лицензию на сервер да еще и на sql, очень удивляются, что через веб сервер файловая летает быстрей чем в серверном варианте :-) Причем ошибка плавающая, еще поди докажи. И на апаче жизнь веселую сделали с вылетами по нескольку раз в день. Отмазка стандартная - у нас все работает, проблема не воспроизводится. И самое интересное, что упорно "не воспроизводится" только у 1С. Проблеме уже год, если не больше, о ней прекрасно знают, проверить и воспроизвести - легко (при желании), но. (24) Очень верное замечание на счёт штатного расписания.
Единственный момент вы пишите: Вы вместо нытья на форуме научитесь собирать технологические журналы и дампы аварийного завершения, то сможете передать поддержке информацию о проблеме, достаточную для анализа и исправления.

Только при покупке программы я ни разу не видел какого либо дополнительного соглашения на тестирование и правилах предоставления результатов тестирования разработчику.

Вообще в мировой практике существуют примеры выпуска тестовых релизов. Пользователь бесплатно использует программу и периодически отправляет результаты разработчику. возьмите тот же Микрософт

Но это не НАШ случай, если судить даже по данному форуму "бесплатных доброхотов" которые ещё и доплачивают за право потестровать очередной "шедевр", у 1С - огромное количество.

(25) CaptainMorgan, это называется не тестированием, это Continious integration :)

IIS - зависает одна из баз, а потом и остальные накрываются. На апаче людей выбрасывает по нескольку раз в день, так как дочерний процесс апача, он же модуль 1с, экстренно заврешает работу и снова запускается (по логам) и это не считая все тех же зависаний

Это три разных проблемы.

Вопрос, какова была информативность этих писем.

я отправлял им дамп зависшего процесса, который естественно ничего не показал

По единственному дампу расследуется только аварийное завершение, и то без гарантии результата. Вы дамп прислали от веб-сервера или от "висящего" клиента ?

Если по описанию проблему воспроизвести не удалось, значит, описание неполное либо среда воспроизведения имеет специфику.

Она воспроизводиться у всех, кто опубликовывал базы на веб сервере и работал с ними

И что, никто не может собрать диагностическую информацию? Не верю.

184 маленьких бага осталось в продукте
Один нашли, поправили
212 маленьких багов осталось в продукте
Изменения в серьезном софте несколько сложнее, чем Вам кажется. (27) asved.ru, Рабочее место в отделе "гнать дурочку" а-ля тех поддержка 1с вам обеспечено. (28) testerpro1, ваше дело. Я Вам подсказку дал (жирным шрифтом), Вы можете ею воспользоваться и добиться расследования проблемы или продолжать ныть.

Спишу Ваш эмоциональный ответ на пол шестого утра, ну бывает.

Вы, по всей видимости, не сталкивались с этой проблемой, и я смотрю не сильно удосужились прочитать всего-то пару постов выше. Ну что ж давайте подведу краткий итог.

(14) А какой тогда смысл без браузера работать?
Если задача состоит в том, чтобы работа шла через веб.

Автор темы как раз и пишет оп проблем с работой через браузер и её решении

(15) Автор пишет "При входе через браузер или тонкий клиент"
На локальной машине увидеть лицензию может только тонкий клиент, а при работе через браузер установкой лицензий на локальных машинах проблему решить было бы невозможно. (16) И как тогда быть? Через браузер удается зацепить только одного клиента. Остальные видят заставку и всё, если некорректно завершить сеанс через браузер, то ВООБЩЕ никого не пускает. Перезагрузка 1С агента дает возможность подключить снова только одного клиента через веб

(18) Клиент серверная. Есть сервак СКУЛ на нем Предприятие 1С не нем же терминальный сервер. Всё работает нормально. В этом серваке торчат несколько USB ключей (базы разные). Подняли веб сервер апач - попытались зацепиться - поймали описанную ситуацию. Забили
Ну а задачу решать надо. Сделали новый сервак подняли на нем IIS. настроили на него веб публикацию.
Цепляемся по веб - то же самое, только один сеанс, остальные сеансы даже авторизацию не запрашивают.
По веб предполагается работать с документооборотом. Причем не важно где будет стоять веб сервер либо на старом либо на новом серваке без разницы - главное чтобы работал.

Перерыл инфу по веб клиентам 1С (через браузер), пока ничего толкового не нашел как настроить выдачу лицензий в связке 1с предприятие - веб сервер-веб клиент.

(19) тогда вообще не понял, какое отношение ситуация у автора топика имеет к вашему случаю?
у вас же USB, а не программные лицензии!
для начала озвучьте маркировку ключей, где они установлены, на той же машине, на которой запущен сервер или по сети, установлен ли HASP LM, настройки ini-файлов
что в настройках сервера указано в поле Разрешить выдачу лицензий сервером 1С:Предприятия - Да или Нет? сервера указано в поле Разрешить выдачу лицензий сервером 1С:Предприятия

Текущая:
Локальный HASP4 ORGL8 10, получило клиентское приложение
Информационная база:
Локальный HASP4 EN8SA 1
Сетевой HASP4 ORGL8
HASP4 ORGL8 100
HASP4 EN8SA 1
Локальный HASP4 ENSR8 1
Локальный HASP4 ORGL8 100

Один из них (как раз для документооборота) установлен в виде USB на сервер SQL (там же работает предприятие 1с)
HASP LM установлен, но не могу сказать правильно ли он работает.

В ini файлах указаны адреса серверов откуда брать, со стороны сервера указаны подсети куда раздавать

Если в в настройках сервера указано в поле Разрешить выдачу лицензий сервером 1С:Предприятия ДА, то ЛОКАЛЬНЫЙ web сервер позволяет подцепить одного веб клиента.
Если указано НЕТ, то веб клиент при подключении выдает ошибку (не найдена лицензия)

веб сервер на другом компе упал, поэтому - что он говорит сказать не могу.

Использование веб-сервера и публикаций информационных баз — один из способов оптимизации 1С. Особенно при работе с ИБ в файловом варианте. Так безопаснее. Сотрудники подключаются к ИБ 1С через браузер или тонкий клиент , не имея прямого доступа к файлам.

В статье расскажем, как решали возникающие вопросы по настройкам Internet Information Services. Через призму своего опыта и коллег.

Сертификат выдается сроком на 90 дней. Для автоматического продления создается периодическое задание в Планировщике. При запуске задачи сайт должен быть доступен (пройти проверку домена) по 80-му порту.

II. Типовая настройка и публикация информационных баз на IIS

На что обратить внимание:

1. Состав компонентов IIS — в Интернете полно инструкций и указаний. Повторяться не будем.

2. Установка 1С необходимой разрядности . Варианта 2: x86 (32-разрядное приложение) или x64. Обязательно выбираем «Модули расширения веб-сервера».

3. Права для встроенной группы /пользователю веб-сервера (IUSR) на папки:

  • с установленной платформой — на «чтение и выполнение» (для старта процессов);
  • самих расположений ИБ — на «изменение» (в случае файлового варианта).

4. Публикация базы через Конфигуратор 1С . Возможно потребуется открыть программу с повышенными правами — «Запуск от имени администратора».

5. Для 32-разрядного клиента 1С в диспетчере IIS включаем разрешение запуска ( DefaultAppPool — Дополнительные параметры — Разрешены 32-разрядные приложения = True ). Для 1C x64 — значение не меняем.

6. На странице сопоставления обработчиков для «1С Web-service Extension» потребуется указать путь к исполняемому модулю :

  • x86 — «C:\Program Files (x86)\1cv8\8.3.x.xx\bin\wsisapi.dll»;
  • x64 — «C:\Program Files\1cv8\8.3.x.xx\bin\wsisapi.dll».

Либо изменяем путь к библиотеке в файлах web.config через Блокнот (располагается, как правило, в c:\inetpub\wwwroot\<имя базы>).

Если в п. 2 все сделано правильно — по указанному пути должен присутствовать файл wsisapi.dll.

7. В частных случаях требуется перезапуск служб IIS . Выполните «Перезапустить» в оснастке управления или перезагрузите сервер.

✅ Соблюдаем соответствие разрядности: если запускаем и публикуем 64-разрядный клиент 1С:Предприятие, то dll также должна быть 64-битной версии.

Если публикуем 32-разрядную версию 1С, то ставим разрешение запуска 32-разрядных приложений на IIS и проверяем путь к wsisapi из каталога x86.

III. Если клиент 1С зависает при подключении к базе по web

Прежде посмотрите этот материал — там общие рекомендации.

Другой случай. Файловая ИБ опубликована на IIS. После авторизации зависает на эмблеме 1С. При открытии Конфигуратора — все нормально.

В журналах Windows ошибка «Процесс, обслуживающий пул приложений "1С", не ответил на команду ping».

  • проверьте права на папку с базой 1С для IUSR/IIS_IUSRS, уровень доступа — на «изменение»;
  • в оснастке IIS «Пулы приложений — <пул_1С> — Дополнительные параметры — Модель процесса» задайте для « Максимальная задержка отклика при проверке связи » значение, превышающее 90 секунд;
  • посмотрите на поведение IIS при «Проверка связи включена» = False.
📝 Из справки: установка [pingingEnabled] (Проверка связи) в значение false не позволит IIS проверять, выполняется ли рабочий процесс, и таким образом сохранит его активным до остановки процесса отладки.

✅ Установка «Максимальное время отклика пинга» в большое значение позволит IIS продолжать наблюдение за рабочим процессом.

Информационная база 1C опубликована на IIS. При работе через тонкий клиент, при нажатии на «Отчеты» вываливается ошибка.

Описание: Необработанное исключение при выполнении текущего веб-запроса. Изучите трассировку стека для получения дополнительных сведений о данной ошибке и о вызвавшем ее фрагменте кода.

✅ Откройте настройки пула приложений и проверьте «Режим управляемого конвейера» = «Classic».

Общие моменты

1. Состав компонентов IIS — в Интернете полно инструкций и указаний. Повторяться не будем.

2. Установка 1С необходимой разрядности. Варианта 2: x86 (32-разрядное приложение) или x64. Обязательно выбираем «Модули расширения веб-сервера».


Установка модулей расширения веб-сервера

3. Права для встроенной группы веб-сервера (IUSR) на папки:

  • с установленной платформой (для старта процессов);
  • самих расположений ИБ (в случае файлового варианта).

4. Публикация базы через Конфигуратор 1С. Возможно потребуется открыть программу с повышенными правами — «Запуск от имени администратора».

5. Для 32-разрядного клиента 1С в диспетчере IIS включаем разрешение запуска (DefaultAppPool — Дополнительные параметры — Разрешены 32-разрядные приложения = True). Для 1C x64 — значение не меняем.

6. На странице сопоставления обработчиков для «1С Web-service Extension» потребуется указать путь к исполняемому модулю:

  • x86 — «C:\Program Files (x86)\1cv8\8.3.x.xx\bin\wsisapi.dll»;
  • x64 — «C:\Program Files\1cv8\8.3.x.xx\bin\wsisapi.dll».

Либо изменяем путь к библиотеке в файлах web.config через Блокнот (располагается, как правило, в c:\inetpub\wwwroot\<имя базы>).

Если в п. 2 все сделано правильно — по указанному пути должен присутствовать файл wsisapi.dll.

7. В некоторых случаях потребуется перезапуск служб IIS. Выполните «Перезапустить» в оснастке управления или перезагрузите сервер.

Соблюдаем соответствие разрядности: если запускаем и публикуем 64-разрядный клиент 1С:Предприятие, то dll также должна быть 64-битной версии.

Если публикуем 32-разрядную версию 1С, то ставим разрешение запуска 32-разрядных приложений на IIS и проверяем путь к wsisapi из каталога x86.

Читайте также: