8.х Фоновые задания

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем n.s.gnedash, 1 авг 2017.

  1. TopicStarter Overlay
    n.s.gnedash
    Offline

    n.s.gnedash Опытный в 1С Команда форума

    Регистрация:
    15 авг 2010
    Сообщения:
    1.383
    Симпатии:
    6
    Баллы:
    29
    Платформа 1С:Предприятие 8.3 (8.3.9.2170), конфа БП 3.0.
    В конфигурации настроена интеграция через внешние источники данных (тип СУБД - OracleDatabase). Добавлен ряд таблиц, из которых идет загрузка НСИ, проводок. Т.к. данных очень много было решено сделать пакетную загрузку через фоновые задания. Размер порции - 100 000, размер пакета - 10 000, количество проводок в документе - 1000, количество одновременно работающих фоновых заданий - 8.
    Запускаю, гружу, все ок. Но если ставлю на ночь, то такое ощущение, что 1с уходит в спящий режим, т.е. через какое-то время, как показывает лог, фоновые задания запускаются, но не завершаются. В итоге получилось, что задания запустились в 12 ночи, а были завершены в 8 утра (когда я пошурудил мышкой) и после этого продолжили выполняться далее в нормальном режиме. Запускал и в тонком и в толстом клиенте. В параметрах стоит настройка - время засыпания в пассивном сеансе 1200, но это разве не только на тонкий клиент распространяется и может ли быть в этом проблема? Отключать это не хочу, т.к. пользователи не выходят из программы, пусть засыпают. Может кто-то сталкивался с подобной проблемой? Как решили?
  2. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.408
    Симпатии:
    973
    Баллы:
    204
    фоновые задания не могут уйти в "спячку", это скорее сервак целиком уходит в режим энергосбережения. т.к. нагрузка маленькая.

    Если днем запустить по расписанию все тоже самое, какой результат?
  3. TopicStarter Overlay
    n.s.gnedash
    Offline

    n.s.gnedash Опытный в 1С Команда форума

    Регистрация:
    15 авг 2010
    Сообщения:
    1.383
    Симпатии:
    6
    Баллы:
    29
    Сервак точно не уходит в спячку, т.к. 4 ночи выполнялась загрузка (не в фоне) и ничего не засыпало.
    Если запускаю днем, то все ок, т.к. работаю на компе. Поясню как запускаются фоновые задания. Запускается в ручном режиме обработка, которая формирует их и запускает в длительных операциях, т.е. засыпают не фоновые задания, а походу клиентский сеанс, который запускает эти задания и они подвисают до того, как клиент не проснется.
    Наверно это все-таки связано с настройкой - время засыпания пассивного сеанса. Ее можно менять программно для конкретного пользователя?
  4. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.408
    Симпатии:
    973
    Баллы:
    204
    Время засыпания для пассивного сеанса - это вообще не из этой серии.
    Если просто сформировать фоновые задания без привязки к типовому функционалу длительных операций, как ведет себя система?
  5. TopicStarter Overlay
    n.s.gnedash
    Offline

    n.s.gnedash Опытный в 1С Команда форума

    Регистрация:
    15 авг 2010
    Сообщения:
    1.383
    Симпатии:
    6
    Баллы:
    29
    Просто фоновые задания работаю корректно.
    А из какой тогда это серии? Если днем запускаю, то все прогружается корректно, т.к. я как пользователь в программе активен. Ночью же в какой-то момент задания перестают завершаться, до момента активности в программе.
  6. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.408
    Симпатии:
    973
    Баллы:
    204
    Даже если заснет клиентский сеанс, все что работает на стороне сервера никак не связано с клиентским сеансом.
    Клиентский сеанс узнаёт о фоновом задании только косвенно: по состоянию фонового задания, которое оно "мониторит" на предмет завершения и по результату, помещенным фоновым заданием в регистр сведений. В вашем случае, так понимаю, результата нет, только состояние фонового задания.

    Пассивный сеанс - это такой сеанс, который в течении определенного периода не отправлял в сторону сервера ни одного пакета вида keepalive.
    Далее, через указанный таймаут, если сеанс не перешел в стадию активного, он считается спящим. Далее, через установленный таймаут такой сеанс завершается менеджером сеансов 1С.

    Это все справедливо для web-клиентов, тонкие клиенты отправляют пакеты keepalive каждую минуту, если нет аппаратных/программных проблем передачи таких пакетов.
  7. TopicStarter Overlay
    n.s.gnedash
    Offline

    n.s.gnedash Опытный в 1С Команда форума

    Регистрация:
    15 авг 2010
    Сообщения:
    1.383
    Симпатии:
    6
    Баллы:
    29
    Подключаемый обработчик ожидания, который проверяет завершилось ли задание/нужно ли запускать следующее запускается на клиенте, по этой причине задания висят по 8 часов, пока клиент не проснется. Есть ли способ для конкретного пользователя изменять время засыпания пассивного сеанса? Я что-то не могу никак найти, не хочется отключать это для программы в целом.
  8. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.408
    Симпатии:
    973
    Баллы:
    204
    Нет такой возможности.

    Смысл запускать фоновое задание и ждать его завершения?
    чтобы не наплодить больше 8-ми фоновых заданий?

    Перетащите "менеджер" фоновых заданий на сторону сервера и пусть контролирует....

    Запускал на Pentuim D840 40-50 фоновых заданий - полет нормальный, дальше уже упирается в процессор/память.
    n.s.gnedash нравится это.
Похожие темы
  1. mavr7963
    Ответов:
    12
    Просмотров:
    5.837
  2. 1c-ka
    Ответов:
    1
    Просмотров:
    804
Загрузка...

Поделиться этой страницей