Вынести фоновые задания на отдельный кластер

1. buganov 200 26.01.20 15:35 Сейчас в теме
Здравствуйте, коллеги.
Кто-нибудь делал перенос регламентных или фоновых заданий на отдельного агента? Требуется отделить нагрузку пользователей от нагрузки роботов, т.к. именно последние создают большую нагрузку в системе.
Желательно собрать такой кластер на одной физической машине.
Для чего это делается. Замечено, что когда хость обожрется памятью(порядка 30-40 Гб), вся база начинает дико тормозить, не смотря на то, что памяти еще 30%.

1С 8.2.19.130
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
4. a.doroshkevich 1411 26.01.20 19:33 Сейчас в теме
(1)на версии 8.2 в платформе 1С такого функционала не существует.
Я бы смотрел в сторону оптимизации работы роботов в части использования оперативной памяти.
А главное - переход на 8.3, не знаю ни одной причины по которой он может быть невозможен
ipoloskov; +1 Ответить
5. buganov 200 26.01.20 19:49 Сейчас в теме
(4) то есть перенос сервиса заданий есть, а заставить его работать, получается никак не получится?
8.3 в планах есть, но проблема в том, что это дорога в один конец и поставить базу на старые рельсы будет проблематично.
Оптимизация проводится постоянно, проблема локализации опять же заключается в урезанности 8.2. Это в 8.3 можно в ТЖ посмотреть потребление памяти в разрезе каждого серверного вызова, в 8.2 такого нет.
6. a.doroshkevich 1411 27.01.20 07:26 Сейчас в теме
(5)
то есть перенос сервиса заданий есть, а заставить его работать, получается никак не получится?
- уточните, это о каком функционале речь?
Требования назначений функциональности появились только в 8.3
7. buganov 200 27.01.20 07:32 Сейчас в теме
(6)Перенос сервиса заданий возможен уже в 8.2. НЕ ТНФ, а именно перенос сервисов между менеджерами кластера.
8. a.doroshkevich 1411 27.01.20 09:08 Сейчас в теме
(7)Да, вспомнил.
У меня он тоже ни разу не заработал, сколько ни пытались запустить.
11. buganov 200 27.01.20 10:12 Сейчас в теме
(8)
ни разу не заработал, сколько ни пытались зап

Вот, судя по всему они допилили механизм только в 8.3
2. user984981 26.01.20 18:12 Сейчас в теме
Нужно скопировать ветки реестра, создать второй сервер на локальной машине, назначить ему другие порты для работы и в Требованиях назначенной функциональности прописать: BackgroundJob.CommonModule
и заблокировать начало сеансов пользователей, если не указывать базу данных, то заблокируется все сеансы, и на кластере, применить требования назначенной функциональности полностью.
3. buganov 200 26.01.20 19:09 Сейчас в теме
(2) я же специально написал, что 8.2!
9. ipoloskov 162 27.01.20 09:24 Сейчас в теме
Даже УПП в последних версиях уже требует 8.3
10. buganov 200 27.01.20 10:11 Сейчас в теме
(9) И УХа, и ERP, но они то причем, если у меня древняя УТ на сопровождении?
12. Дмитрий74Чел 234 27.01.20 10:50 Сейчас в теме
Собственно, решение (переход на 8.3) уже озвучено.
Припарки и компрессы:
- вынести базу в отдельный кластер (если была вместе с другими базами)
- попробовать прописать в коде запуска фоновых "если сервер <> &СерверФоновых тогда возврат", например через СтрокаСоединенияИнформационнойБазы (). Хотя скорее всего СтрокаСоединенияИнформационнойБазы() вернет имя центрального сервера в кластере (точки подключения), а не имя сервера на котором выполняется код. Тогда колдовать с программным подключением к кластеру, перебирать серверы, искать на каком есть такой же пользователь/сеанс, и принимать решение о завершении текущего сеанса/продолжении работы.
13. buganov 200 27.01.20 11:04 Сейчас в теме +2 $m
(12) Если нет нормального решения, то имхо, колхоз разводить будет только хуже. Уж лучше стартовать проект перехода на 8.3 или как то постараться оптимизировать процессы в части роботов
Оставьте свое сообщение

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