Имя: Пароль:
1C
 
V8: Привязка рабочего процесса (RPhost.exe) к определенному пользователю(компу)
0 VoDo
 
24.06.09
09:46
Собственно Как?
На сервере висят 2 рабочих процесса. 1 приспокойно справляется с основными задачими юзеров. второй процесс нужен только для крупных операций. Как назначить второму процессу чтоб он забирал только нужный конект?
1 mista2009
 
24.06.09
10:06
Процессы могут быть включены или выключены. Если в момент запуска клиента для крупных задач на сервере будет включен только нужный процесс то клиент на него и повесится. Это чисто теоритический, сам не пробовал, руки не доходят.
2 mikecool
 
24.06.09
10:08
процесс выбирается в момент подключения как наименее загруженный - это из ЖКК
3 VoDo
 
24.06.09
10:14
(1) Т.е. в моем случае удобнее так:
На кластере я ставлю оставляю 2 процесса, но на 1 снимаю галку что он включен. Все юзеры будут висеть на 1 процессе. А перед запуском "мегазадачи" я включаю галку на втором процессе и подключаюсь. В этот момент система увидит второй процесс и повесит мою задачу на менее загруженный (второй) процесс и таким макаром я получу как бы распределение действий по процессам.
Я правильно понял? ;)
4 mista2009
 
24.06.09
10:19
(3) Ну да. Процесс для мегазадачи должен быть всегда выключен и включается только в момент запуска мегазадачи.
5 VoDo
 
24.06.09
10:22
(4) а других методов нету?
6 VoDo
 
24.06.09
11:17
И тех поддержка молчит..
7 rs_trade
 
24.06.09
11:48
Можно через фоновые задания в разных потоках твою мегазадачу выполнять...
8 rs_trade
 
24.06.09
11:49
Тебе второй процесс зачем? Ядра загрузить хочешь? Если да, то и разные потоки сойдут...
9 VoDo
 
24.06.09
11:49
(7)Если не затруднит можно по подробней? Что то не усек мысль.
10 rs_trade
 
24.06.09
11:54
(9) Есть такая штука ФоновыеЗадания, для асинхронного выполнения вычислений. запускается
ФоновыеЗадания.Выполнить("ИмяпроцедурыВОбщемМодуле", Параметры, "Ключ", "Описалово")

Так вот каждая такая задача запускается в отдельном потоке одного процесса. Можно хоть сколько их запустить. Проц нормально грузят, равномерно все ядра нагружаются...
11 VoDo
 
24.06.09
11:56
(8)(10) мне память грузить
12 rs_trade
 
24.06.09
12:01
(11) Как это память?
13 VoDo
 
24.06.09
12:07
При запуске этой задачи 1 rphost вырастает до размеров 1.5-1.7 га. Из за этого случаются случаи вылета других юзеров.
14 ShoGUN
 
24.06.09
12:09
(13) Переходи на 64-битный сервер 1С.
15 rs_trade
 
24.06.09
12:14
(13) Так может на другой сервер перенести? Память то на серваке одна, хз решит ли проблему другой процесс...
16 VoDo
 
24.06.09
12:24
(14)Ктож даст то... Ключик то 57тыр
(15)Кластер физически на одной машине, а sql на второй. делать кластер из 2 физических машин-не реально т.к. не дадут денег
17 rs_trade
 
24.06.09
12:25
(16) Ну а если просто добавить второй процесс и запустить задачу как обычно? пробовал?
18 Rebelx
 
24.06.09
12:25
(13) а ты запускай еще один процесс перед запуском твоей мега задачи, а потом его останавливай
19 VoDo
 
24.06.09
12:28
(17) второй процес добавил. Пробывать буду сегодня. Просто ищу как можно назначить мой второй процесс только на меня (мою задачу). чисто теоретически если произойдет сбой то уже отвалится только половина юзеров вместе с моим процессом. но мечта идиота-что бы мухи отдельно от котлет.
20 VoDo
 
24.06.09
12:29
(18) ну это получается ручками. А иногда задача может запускаться и ночью (производство круглосуточное).
21 Rebelx
 
24.06.09
12:30
(20) так это можно и не ручками делать
22 VoDo
 
24.06.09
12:34
(21)скрипт установки и снятия галки в процессе? можна пинок в сторону где копать ?
23 rs_trade
 
24.06.09
12:37
(22) В синтакс помощнике - Средства интеграции и администрирования...
24 rs_trade
 
24.06.09
12:45
(22) на ИТС есть обработина - КонсольКластераСерверов. пример работы можно в ней посмотреть
25 VoDo
 
24.06.09
12:48
(23)(24) Благодарю за волшебный пендель!
Итого получаем алгоритм действий скрипта:
1) ставим галку у второго процесса;
2) пакетный запуск 1С;
3) ждем n секунд (на запуск и подключение к базе);
4) снимаем галку;
Так?
26 mista2009
 
24.06.09
13:59
(25) Нет не так.

1) Снимаем галки у всех пользовательских процессов чтобы наш не залетел в них
2) Ставим галку у нашего процесса
3) Запуск 1С
4) Снимаем галку у нашего процесса
5) Ставим галки у всех пользовательских процессов
27 VoDo
 
24.06.09
14:15
(26) А наш принципиально туда не попадет, т.к. наш пустой процес будет менее задействован и примет с распрастертыми объятьями нас
28 VoDo
 
25.06.09
14:53
Криво - косо но сделал;) кому надо-поделюсь
29 rs_trade
 
25.06.09
15:05
(28) Результат то какой?
30 VoDo
 
25.06.09
15:20
(29) по алгоритму из (25)
31 rs_trade
 
25.06.09
15:36
(30) Я про вылеты юзеров. Прекратились?
32 VoDo
 
25.06.09
15:49
(31) не проверил еще. Надеюсь сегодня узнать.