|
А как сейчас модно выполнять в УФ код с задержкой? | ☑ | ||
---|---|---|---|---|
0
Сияющий Асинхраль
04.10.21
✎
16:36
|
Задачка такая. Производится запрос к сайту. Ответ приходит не сразу. Когда придет полный ответ предсказать не могу, может 20 секунд, может больше. Поэтому надо обращаться за результатом выполнения запроса через некие промежутки времени и анализировать ответ - является ли ответ полным, или частичным. В общем-то вариант:
ПодключитьОбработчикОжидания() работает. Но меня несколько смущает, что поскольку в процедуру, которая находится в обработчике параметры передать нельзя (а без параметров - точных адресов ответа не обойтись), то приходится параметры хранить в реквизитах формы обработки, откуда производится запрос. Поэтому, собсно и вопрос: существуют ли другие красивые варианты? |
|||
1
ДенисЧ
04.10.21
✎
16:37
|
Внешняя компонента со слипом...
|
|||
2
Сияющий Асинхраль
04.10.21
✎
16:39
|
(1) Вряд ли получится. Клиент вряд ли захочет ставить ВК в достаточно сильнозагруженную базу :-(
|
|||
3
Garykom
гуру
04.10.21
✎
16:41
|
(0) я бы сказал насчет микросервиса но пуканы разорвет
|
|||
4
ДенисЧ
04.10.21
✎
16:41
|
(2) А что её ставить-то?
|
|||
5
Жан Пердежон
04.10.21
✎
16:43
|
(0) модно? Асинх
|
|||
6
polosov
04.10.21
✎
16:43
|
(3) Пощади
|
|||
7
Garykom
гуру
04.10.21
✎
16:43
|
(0) задачу уточни
запрос к сайту это некое фоновое или это в юзер интерфейсе интерактивно? |
|||
8
Kassern
04.10.21
✎
16:43
|
(0) с чем работаете? Если это что-то типа APIшки, где делается запрос, на выходе токен, а по этому токену результат через какое то время, то проще рег заданиями это дело настроить и регистром для токенов.
|
|||
9
Сияющий Асинхраль
04.10.21
✎
16:45
|
(8) Юзер делает запрос интерактивно, а вот ответ получает ХЗ когда, но опять таки юзер. По получению ответа, запросы прекращаются...
|
|||
10
Сияющий Асинхраль
04.10.21
✎
16:46
|
(8)->(7)
|
|||
11
youalex
04.10.21
✎
16:49
|
ФЗ (насчет модности не уверен)
|
|||
12
boozin
04.10.21
✎
16:53
|
"ПодключитьОбработчикОжидания()работает. Но меня несколько смущает, что поскольку в процедуру, которая находится в обработчике параметры передать нельзя (а без параметров - точных адресов ответа не обойтись)" так создай константы, справочники, регистры сведений (по вкусу) и бери в обработке ожидания данные оттуда...
|
|||
13
Сияющий Асинхраль
04.10.21
✎
16:57
|
(12) Константы, справочники - еще хуже. А вот регистр - думаю. Может и правда стоит...
|
|||
14
ptiz
04.10.21
✎
17:07
|
(13) Если между разными формами не надо обмениваться данными, то хватит и реквизитов формы. Если претят реквизиты - можно во временное хранилище поместить.
|
|||
15
Сияющий Асинхраль
04.10.21
✎
17:10
|
(14) У временного хранилища надо будет как-то передавать адрес :-( , а это по сути опять реквизит формы... Просто вместо нескольких строковых параметров будет один...
|
|||
16
Сияющий Асинхраль
04.10.21
✎
17:16
|
(14) Хотя ты прав :-) , пожалуй, я себя уже почти уговорил :-) - уже начал думать, что, дескать, пусть будет. Погляжу еще регистр с измерением Пользователь и ресурсами нужные данные, но то, что работает - вроде как работает неплохо.
|
|||
17
Garykom
гуру
04.10.21
✎
17:17
|
(9) тогда ПодключитьОбработчикОжидания() самое простое и правильное
только параметры храни в структуре одной в одном реквизите а не куче |
|||
18
mikecool
04.10.21
✎
17:20
|
настроить очередь сообщений, это можно, как и сервисы на ГО
|
|||
19
Сияющий Асинхраль
04.10.21
✎
17:37
|
(17),(18) Ok. Спасибо за советы!!!
|
|||
20
ptiz
04.10.21
✎
17:43
|
(15) Адресом будет УИД формы - в этом случае хранилище существует до тех пор, пока жива форма.
|
|||
21
lodger
04.10.21
✎
17:50
|
(0) модно - делать фоновое выполнение кода. но так даже 1с ленится делать, когда речь идёт о вебсервисах типа ЧестногоЗнака.
|
|||
22
Сияющий Асинхраль
04.10.21
✎
17:55
|
(20) Да. Пожалуй это лучший вариант. Спасибо.
|
|||
23
Garykom
гуру
04.10.21
✎
18:14
|
(22) если у тебя есть форма и обработчик ожидания то нафик не надо временное хранилище
|
|||
24
kortun
04.10.21
✎
18:18
|
(21) это в мечтах разработчик платформы модно, на практике при количестве сеансов выше тысячи все эти фоновые задания вешают рп-хосты, всякие модные слипы через скрипты грузят диски и создают очереди.
Единственный рабочий вариант оказался на пинге |
|||
25
VladZ
05.10.21
✎
11:55
|
(0) ОбщегоНазначенияБТС.Пауза(ВремяВСек).
|
|||
26
Kassern
05.10.21
✎
13:08
|
(25) а там в кишках ФоновоеЗадание.ОжидатьЗавершения(Секунд)
А в СП по этому дело написано: Использование в версии: Доступен, начиная с версии 8.1. Не рекомендуется использовать, начиная с версии 8.3.13. Описание изменено в версии 8.3.15. |
|||
27
lodger
06.10.21
✎
09:22
|
(24) тысячи внедрений никогда не дотянут до "количестве сеансов выше тысячи". да и над стабильностью скрытых\фоновых\регламентных операций постоянно идёт работа. а может достаточно произвести тюнинг настроек кластера, чтобы при дефиците ресурсов стартовал новый инстанс... ах да - это же появилось в новых редакциях платформы. ваше ворчание устарело.
|
|||
28
fisher
06.10.21
✎
09:41
|
(26) > Не рекомендуется использовать, начиная с версии 8.3.13
Так это потому, что они его заменили на ОжидатьЗавершенияВыполнения(). А с ним, как я понимаю, тот же самый фокус провернуть можно. Я бы как раз на серверной паузе сабж и делал. |
|||
29
fisher
06.10.21
✎
09:45
|
Эх. А если бы еще на клиента асинхронную паузу завезли, то можно было бы вообще через Ждать сделать...
|
|||
30
Kassern
06.10.21
✎
09:52
|
(28) точно, в новой БСП там уже ОжидатьЗавершенияВыполнения )
|
|||
31
fisher
06.10.21
✎
09:53
|
(24) То, что выполнение всех отчетов и полнотекстовый поиск в динамических списках через фоновые идет - значит никого не смущает. А несчастный запрос к сайту в фоне сразу кластер положит.
|
|||
32
kortun
06.10.21
✎
10:59
|
(31) так все и начинают, сначала пауза в запросе к сайту, потом в РЗ, потом еще куда-нибудь.
И потом смотришь на количество фоновых и офигиваешь |
|||
33
kortun
06.10.21
✎
11:01
|
(27) конечно устарело, я же ретроград, а то что тормоза запуска фоновых и регламентных при отсутствии пользователей дикие до сих пор и на партнерском форуме об этом знают, это я из головы придумал.
|
|||
34
lodger
06.10.21
✎
11:08
|
(33) "тормоза запуска фоновых и регламентных при отсутствии пользователей дикие до сих пор" - проблемы файловых баз как-то мало связаны с "количестве сеансов выше тысячи".
|
|||
35
fisher
06.10.21
✎
11:15
|
(32) Странная аргументация. А как еще организовывать асинхронное выполнение, как не через фоновые? Если это проблема - то надо ее анализировать. Если это не проблема - то надо просто перестать офигивать. И что такое "тормоза запуска фоновых"? Все вот знают и даже на партнерке обсуждают, а я как-то проспал.
|
|||
36
fisher
06.10.21
✎
11:18
|
А! Дошло. Речь про "холодные старты" фоновых при отсутствии пользователей в базе? Пускай это будет моей самой большой проблемой.
|
|||
37
lodger
06.10.21
✎
13:05
|
(36) когда пользаков больше, чем в ларьке, всегда обратная проблема - вечно живые сеансы, которые приходится пинками разгонять, если надо взять монопольный доступ.
|
|||
38
lodger
06.10.21
✎
13:05
|
(37) а потом в догонку кучка тикетов - шо ви таки мешаете приносить гешефт по ночам.
|
|||
39
lodger
06.10.21
✎
13:06
|
(38) несмотря на согласованный и трижды опубликованный график работ.
|
|||
40
kortun
08.10.21
✎
17:01
|
(35) пауза и асинхронное выполнение вместе не так часто встречаются, я бы сказал совсем редко встречаются и 1С вместо нормальной паузы предлагает решение, которое для паузы не совсем подходит, особенно на больших нагрузках. И оправдание их, что на мелких работает, а на крупных можно и кластер подкрутить странно выглядит, особенно со стороны бизнеса. Им не всегда понятно, почему в других языках нет такой проблемы, а в 1с нужно фоновые задания стартовать для этой цели.
|
|||
41
pechkin
08.10.21
✎
18:00
|
В 21 релизе бущ асинхронные http запросы
|
|||
42
ДедМорроз
08.10.21
✎
22:05
|
(41) наконец-то,давно пора,а то,все асинхронное,а то,что у всех асинхронное из коробки,у 1с синхронное.
Правда,асинхронность у 1с только на клиенте,на сервер асинхронность не завозили. Фоновое задание прекрасно по таймауту ждет само себя. |
|||
43
sitex
naïve
08.10.21
✎
22:14
|
(3) А что нет то вещай. В бСП вроде есть уже , но все же хочется раздирающий пуканы увидеть.
|
|||
44
sitex
naïve
08.10.21
✎
22:14
|
(43) + cod
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |