Вход | Регистрация
 

На клиенте первое в сеансе соединение через ADODB к Provider=SQLOLEDB выполняется 6 секунд

На клиенте первое в сеансе соединение через ADODB к Provider=SQLOLEDB выполняется 6 секунд
Я
   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
Делай при старте в фоновом и закрывай.
Следующие будут быстрее )))
   TormozIT
 
2 - 05.08.21 - 08:49
(1) Загрузка библиотек SQLOLEDB в серверный процесс не повлияет на клиентский процесс, где их по-прежнему не появится.
   ДенисЧ
 
3 - 05.08.21 - 08:50
(2) А кто говорил про серверный? В приначалеработы на клиенте запусти в фоне, пусть оно молча оттарабанит
   TormozIT
 
4 - 05.08.21 - 08:50
В файловой базе проблема тоже есть.
   TormozIT
 
5 - 05.08.21 - 08:52
(3) Вроде в (0) написал про асинхронную инициализацию - она все равно завершится только через 6 секунд. А пользователь может раньше вызвать функцию.
   TormozIT
 
6 - 05.08.21 - 08:53
Ну и проверить, завершилась ли асинхронная инициализация соединения, я не нашел способа. Научите.
   ДенисЧ
 
7 - 05.08.21 - 08:57
(6) Проверить завершение можно только циклом. Ибо 1с не умеет адошные события.
(5) У тебя пользователь за 6 секунд успеет дождаться открытия всех окон, открыть нужную обработку и нажать кнопку? О_о
   TormozIT
 
8 - 05.08.21 - 08:59
(7) Каким циклом?
   ДенисЧ
 
9 - 05.08.21 - 09:00
(8) Пока НЕ подключениеЗавершено Цикл
нужно смотреть свойства коннекшна, у него было вроде state
   acht
 
10 - 05.08.21 - 09:04
(0) Версия Windows какая, не старая?
Там у microsoft были проблемы, в районе 1803. Починили или нет - не знаю.
   Garykom
 
11 - 05.08.21 - 09:04
(0) Микросервис на Go постоянно держит пул соединений с sql
по http обращается на микросервис и никаких задержек
ADO и ВИД нафик не нужны
   acht
 
12 - 05.08.21 - 09:04
(11) > Микросервис на Go
И животноводство!
   Garykom
 
13 - 05.08.21 - 09:05
(12) разводить и готовить уметь полезно
   acht
 
14 - 05.08.21 - 09:08
(0) И настройки сервера проверь. Вдруг оно по named pipes вообще туда долбится.
   TormozIT
 
15 - 05.08.21 - 09:16
(14) Сервер может быть любой. Нужно универсальное решение.
   TormozIT
 
16 - 05.08.21 - 09:17
(9) Да. Пришлось сделать глобальную переменную для хранения соединения и проверять State = 1.
   Дык ё
 
17 - 05.08.21 - 09:25
(0) у меня было когда-то. побеждалось переходом на другой провайдер - MSOLEDBSQL или SQLNCLI11, не помню
   Garykom
 
18 - 05.08.21 - 09:32
(15) так микросервис как раз универсальное
1С всегда единым образом по http ))
   Garykom
 
19 - 05.08.21 - 09:32
(18)+ и пофиг сервер, клиент, винда, линукс, макось, андроид, ios
   acht
 
20 - 05.08.21 - 09:37
(16) А полузабытый метод ДобавитьОбработчик, не?
   Garykom
 
21 - 05.08.21 - 09:38
(20) угу в веб-клиенте ))
   acht
 
22 - 05.08.21 - 09:47
(21) Да, да. В том же самом, в котором ADODB.Connection
   Garykom
 
23 - 05.08.21 - 09:56
(22) под андроидом?
   acht
 
24 - 05.08.21 - 09:58
(23) Конечно. Который в виртуалбоксе на линуксе, который под HyperV на виндовом сервере.
   Garykom
 
25 - 05.08.21 - 09:59
(24) это уже стеб пошел

мое же решение с микросервисом универсально и работает почти везде
а это ADO как и ВИД давно устарели и ограничены виндой
да и там хрен настроишь если права зарезаны
   TormozIT
 
26 - 05.08.21 - 12:07
Оказалось, что TCP протокол на сервере SQL отключен, а он первым пробуется провайдером. И вот 6 секунд при первом соединении идут на попробовать TCP протокол. Явное указание протокола ("np:cortex") устранило задержку. Всем спасибо за подсказки.
   Garykom
 
27 - 05.08.21 - 12:13
(26) и вот таких граблей через ADO дофига и больше
когда понадобится свое решение 1С тиражировать на кучу других разномастных серверов будет больно
особенно когда админы того
   ДенисЧ
 
28 - 05.08.21 - 12:14
(27) А если не придётся - будет мучительно больно, что потратил кучу времени на НЕХ, которая не понадобился.
   acht
 
29 - 05.08.21 - 12:17
(28) Зато можно будет вырываться с этой НЁХ в темы и пропагандировать её. Сплошной профит.
   Garykom
 
30 - 05.08.21 - 12:17
(28) в том то и дело что НЁХ это ADO
а с Go все легко и просто реализуется
 
 
   Garykom
 
31 - 05.08.21 - 12:18
(29) "Новый COMОбъект" имхо в будущем аукнется
   ДенисЧ
 
32 - 05.08.21 - 12:23
(30) Как раз го в данном случае - НЁХ. Не надо притаскивать КПВТ, когда тебе комара прихлопнуть надо.
   acht
 
33 - 05.08.21 - 12:24
(31) Да, да! Мы пожалеем об этом и всетакое.
   Garykom
 
34 - 05.08.21 - 12:28
(32) зато я могу прихлопнуть в любой комнате и даже на природе и даже в еще не построенных домах
ваша же хлопушка работает только в зданиях одной системы и только от 220В
   acht
 
35 - 05.08.21 - 12:29
(34) Поразительно! А ушами шевелить можешь?
   ДенисЧ
 
36 - 05.08.21 - 12:31
(34) Не сможешь. В рамках сети конторы, в которой я работаю - админы скорее согласуют настройку адо где надо, чем запуск какого-то левого сервиса, собранного неизвестно каким компилятором неизвестно из каких источников.
   Garykom
 
37 - 05.08.21 - 12:34
(36) а если админы не могут настроить адо в принципе?

и почему левым и из левых? компилятор официальный, исходники есть они свои
   Garykom
 
38 - 05.08.21 - 12:35
(37)+ и да обычно у 1С достаточно прав чтобы запустить бинарник
поэтому админы идут лесом
   Garykom
 
39 - 05.08.21 - 12:35
(38)+ если прав недостаточно - каким образом ВК в типовых пашут?
   ДенисЧ
 
40 - 05.08.21 - 12:36
(37) "если админы не могут настроить адо в принципе"
Тогда такие админы идут не то что лесом, а тем путём, что указала Фаина Раневская пионерам.
   ДенисЧ
 
41 - 05.08.21 - 12:37
(39) ВК и левая служба, написанная неизвестно кем - разные вещи.
Или ты предлагаешь админам ещё и го изучить, чтобы проверить количество закладок, которые ты в исходник напихал?
   Garykom
 
42 - 05.08.21 - 13:03
(41) а ВК с ИС как админы изучают?
   Garykom
 
43 - 05.08.21 - 13:04
(40) ты уже умеешь адо на фреше и линуксе/макоси/андроиде и т.д. настраивать?
   ДенисЧ
 
44 - 05.08.21 - 13:06
(43) Я похож на извращенца? Мне не нужно использовать адо на макоси, линуксе и андроиде.
А фрешем я тем более не пользуюсь.


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.