|   |   | 
| 
 | На клиенте первое в сеансе соединение через ADODB к Provider=SQLOLEDB выполняется 6 секунд | ☑ | ||
|---|---|---|---|---|
| 0
    
        TormozIT гуру 05.08.21✎ 08:39 | 
        При первом в сеансе на клиенте выполнении ADODB.Connection.Open("Provider=SQLOLEDB") возникает ожидание 6 секунд.
 Соединение = Новый COMОбъект("ADODB.Connection"); СтрокаСоединения = "Provider=SQLOLEDB; Data Source=""cortex""; Initial Catalog=""KA1""; User Id=""""; Password="""";Trusted_Connection=Yes"; Соединение.Open(СтрокаСоединения); Видимо подгружаются какие то библиотеки и что то еще неведомое происходит. Как то можно это ускорить? Асинхронную инициализацию уже сделал, но она все равно только через 6 секунд сработает и непонятно, как проверить что она завершилась. Соединение.Open(СтрокаСоединения,,, 16); | |||
| 1
    
        ДенисЧ 05.08.21✎ 08:42 | 
        Делай при старте в фоновом и закрывай. 
 Следующие будут быстрее ))) | |||
| 2
    
        TormozIT гуру 05.08.21✎ 08:49 | 
        (1) Загрузка библиотек SQLOLEDB в серверный процесс не повлияет на клиентский процесс, где их по-прежнему не появится.     | |||
| 3
    
        ДенисЧ 05.08.21✎ 08:50 | 
        (2) А кто говорил про серверный? В приначалеработы на клиенте запусти в фоне, пусть оно молча оттарабанит     | |||
| 4
    
        TormozIT гуру 05.08.21✎ 08:50 | 
        В файловой базе проблема тоже есть.     | |||
| 5
    
        TormozIT гуру 05.08.21✎ 08:52 | 
        (3) Вроде в (0) написал про асинхронную инициализацию - она все равно завершится только через 6 секунд. А пользователь может раньше вызвать функцию.     | |||
| 6
    
        TormozIT гуру 05.08.21✎ 08:53 | 
        Ну и проверить, завершилась ли асинхронная инициализация соединения, я не нашел способа. Научите.     | |||
| 7
    
        ДенисЧ 05.08.21✎ 08:57 | 
        (6) Проверить завершение можно только циклом. Ибо 1с не умеет адошные события.
 (5) У тебя пользователь за 6 секунд успеет дождаться открытия всех окон, открыть нужную обработку и нажать кнопку? О_о | |||
| 8
    
        TormozIT гуру 05.08.21✎ 08:59 | 
        (7) Каким циклом?     | |||
| 9
    
        ДенисЧ 05.08.21✎ 09:00 | 
        (8) Пока НЕ подключениеЗавершено Цикл
 нужно смотреть свойства коннекшна, у него было вроде state | |||
| 10
    
        acht 05.08.21✎ 09:04 | 
        (0) Версия Windows какая, не старая? 
 Там у microsoft были проблемы, в районе 1803. Починили или нет - не знаю. | |||
| 11
    
        Garykom гуру 05.08.21✎ 09:04 | 
        (0) Микросервис на Go постоянно держит пул соединений с sql
 1С по http обращается на микросервис и никаких задержек ADO и ВИД нафик не нужны | |||
| 12
    
        acht 05.08.21✎ 09:04 | 
        (11) > Микросервис на Go
 И животноводство! | |||
| 13
    
        Garykom гуру 05.08.21✎ 09:05 | 
        (12) разводить и готовить уметь полезно     | |||
| 14
    
        acht 05.08.21✎ 09:08 | 
        (0) И настройки сервера проверь. Вдруг оно по named pipes вообще туда долбится.     | |||
| 15
    
        TormozIT гуру 05.08.21✎ 09:16 | 
        (14) Сервер может быть любой. Нужно универсальное решение.     | |||
| 16
    
        TormozIT гуру 05.08.21✎ 09:17 | 
        (9) Да. Пришлось сделать глобальную переменную для хранения соединения и проверять State = 1.     | |||
| 17
    
        Дык ё 05.08.21✎ 09:25 | 
        (0) у меня было когда-то. побеждалось переходом на другой провайдер - MSOLEDBSQL или SQLNCLI11, не помню     | |||
| 18
    
        Garykom гуру 05.08.21✎ 09:32 | 
        (15) так микросервис как раз универсальное
 1С всегда единым образом по http )) | |||
| 19
    
        Garykom гуру 05.08.21✎ 09:32 | 
        (18)+ и пофиг сервер, клиент, винда, линукс, макось, андроид, ios     | |||
| 20
    
        acht 05.08.21✎ 09:37 | 
        (16) А полузабытый метод ДобавитьОбработчик, не?     | |||
| 21
    
        Garykom гуру 05.08.21✎ 09:38 | 
        (20) угу в веб-клиенте ))     | |||
| 22
    
        acht 05.08.21✎ 09:47 | 
        (21) Да, да. В том же самом, в котором ADODB.Connection     | |||
| 23
    
        Garykom гуру 05.08.21✎ 09:56 | 
        (22) под андроидом?     | |||
| 24
    
        acht 05.08.21✎ 09:58 | 
        (23) Конечно. Который в виртуалбоксе на линуксе, который под HyperV на виндовом сервере.     | |||
| 25
    
        Garykom гуру 05.08.21✎ 09:59 | 
        (24) это уже стеб пошел
 мое же решение с микросервисом универсально и работает почти везде а это ADO как и ВИД давно устарели и ограничены виндой да и там хрен настроишь если права зарезаны | |||
| 26
    
        TormozIT гуру 05.08.21✎ 12:07 | 
        Оказалось, что TCP протокол на сервере SQL отключен, а он первым пробуется провайдером. И вот 6 секунд при первом соединении идут на попробовать TCP протокол. Явное указание протокола ("np:cortex") устранило задержку. Всем спасибо за подсказки.     | |||
| 27
    
        Garykom гуру 05.08.21✎ 12:13 | 
        (26) и вот таких граблей через ADO дофига и больше
 когда понадобится свое решение 1С тиражировать на кучу других разномастных серверов будет больно особенно когда админы того | |||
| 28
    
        ДенисЧ 05.08.21✎ 12:14 | 
        (27) А если не придётся - будет мучительно больно, что потратил кучу времени на НЕХ, которая не понадобился.     | |||
| 29
    
        acht 05.08.21✎ 12:17 | 
        (28) Зато можно будет вырываться с этой НЁХ в темы и пропагандировать её. Сплошной профит.     | |||
| 30
    
        Garykom гуру 05.08.21✎ 12:17 | 
        (28) в том то и дело что НЁХ это ADO 
 а с Go все легко и просто реализуется | |||
| 31
    
        Garykom гуру 05.08.21✎ 12:18 | 
        (29) "Новый COMОбъект" имхо в будущем аукнется     | |||
| 32
    
        ДенисЧ 05.08.21✎ 12:23 | 
        (30) Как раз го в данном случае - НЁХ. Не надо притаскивать КПВТ, когда тебе комара прихлопнуть надо.     | |||
| 33
    
        acht 05.08.21✎ 12:24 | 
        (31) Да, да! Мы пожалеем об этом и всетакое.     | |||
| 34
    
        Garykom гуру 05.08.21✎ 12:28 | 
        (32) зато я могу прихлопнуть в любой комнате и даже на природе и даже в еще не построенных домах
 ваша же хлопушка работает только в зданиях одной системы и только от 220В | |||
| 35
    
        acht 05.08.21✎ 12:29 | 
        (34) Поразительно! А ушами шевелить можешь?     | |||
| 36
    
        ДенисЧ 05.08.21✎ 12:31 | 
        (34) Не сможешь. В рамках сети конторы, в которой я работаю - админы скорее согласуют настройку адо где надо, чем запуск какого-то левого сервиса, собранного неизвестно каким компилятором неизвестно из каких источников.     | |||
| 37
    
        Garykom гуру 05.08.21✎ 12:34 | 
        (36) а если админы не могут настроить адо в принципе?
 и почему левым и из левых? компилятор официальный, исходники есть они свои | |||
| 38
    
        Garykom гуру 05.08.21✎ 12:35 | 
        (37)+ и да обычно у 1С достаточно прав чтобы запустить бинарник
 поэтому админы идут лесом | |||
| 39
    
        Garykom гуру 05.08.21✎ 12:35 | 
        (38)+ если прав недостаточно - каким образом ВК в типовых пашут?     | |||
| 40
    
        ДенисЧ 05.08.21✎ 12:36 | 
        (37) "если админы не могут настроить адо в принципе"
 Тогда такие админы идут не то что лесом, а тем путём, что указала Фаина Раневская пионерам. | |||
| 41
    
        ДенисЧ 05.08.21✎ 12:37 | 
        (39) ВК и левая служба, написанная неизвестно кем - разные вещи.
 Или ты предлагаешь админам ещё и го изучить, чтобы проверить количество закладок, которые ты в исходник напихал? | |||
| 42
    
        Garykom гуру 05.08.21✎ 13:03 | 
        (41) а ВК с ИС как админы изучают?     | |||
| 43
    
        Garykom гуру 05.08.21✎ 13:04 | 
        (40) ты уже умеешь адо на фреше и линуксе/макоси/андроиде и т.д. настраивать?     | |||
| 44
    
        ДенисЧ 05.08.21✎ 13:06 | 
        (43) Я похож на извращенца? Мне не нужно использовать адо на макоси, линуксе и андроиде.
 А фрешем я тем более не пользуюсь. | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |