Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / терзают меня смутные сомнения... / 9 сообщений из 9, страница 1 из 1
21.02.2022, 11:17
    #40135547
sysdba22
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
в продолжение темы про не асинхронный fbclient.dll. возник вопрос. извиняюсь сразу, что нет пока времени писать тестовый код. может авторы фб сходу ответят.

итак, имеем сервер классик.

подключение идет из nodejs, драйвер использует fbclient.dll, объектный API. Библиотека загружена один раз. Есть два пользователя, каждый работает в своем аттачменте.

пусть, первый пользователь запускает запрос SELECT, который выполняется 2 секунды и выдает одну запись.

второй пользователь, через 1 секунду после запроса первого пользователя запускает запрос DELETE, который выполняется 5 секунд. Данные удаляются из других таблиц. Эти запросы не пересекаются.

Вопрос такой. Когда каждый из пользователей получит свой ответ.

Вариант 1.

Пользователь 1 через 2 секунды после запуска своего запроса. Пользователь 2 через 5 секунд после запуска своего запроса.

Вариант 2.

Пользователь 1 через 6 секунд после запуска своего запроса, так как fbclient будет ждать ответа сервера на запрос DELETE. Пользователь 2 через 5 секунд после запуска своего запроса.

Вариант 3.

Как-то иначе...
...
Рейтинг: 0 / 0
21.02.2022, 11:24
    #40135553
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
Штойта вы фигней страдаете ...
Разные подключения "достаточно изолированы", чтобы не делать "giant lock" на весь сервер.
...
Рейтинг: 0 / 0
21.02.2022, 11:36
    #40135562
sysdba22
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
вопрос не в сервере, а именно в fbclient.dll. если DELETE уходит на сервер и ожидается ответ, то не останавливает ли это любой другой обмен через эту библиотеку. в классическом клиент-сервер на каждом клиенте свой экземпляр fbclient.dll в памяти. тут, именно вопрос в том, что одна библиотека обслуживает все аттачменты.
...
Рейтинг: 0 / 0
21.02.2022, 11:42
    #40135568
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
В fbclient нет подобной блокировки.
Каждый коннект получит свой ответ независимо от действий в других коннектах.
...
Рейтинг: 0 / 0
21.02.2022, 11:47
    #40135572
sysdba22
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
hvlad
В fbclient нет подобной блокировки.
Каждый коннект получит свой ответ независимо от действий в других коннектах.


тогда что имеется ввиду под асинхронным АПИ в этой теме?

https://www.sql.ru/forum/1342144/asinhronnoe-api-dlya-klienta

тоже, что описано в моем примере, но в случае вызова в рамках ОДНОГО аттачмента?
...
Рейтинг: 0 / 0
21.02.2022, 11:55
    #40135580
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
sysdba22
тогда что имеется ввиду под асинхронным АПИ в этой теме?
Я чужие глупости измышления стараюсь не комментировать, спрашивай того, кто имеет в виду :)

PS в одном коннекте все действия сериализованы, забудьте навсегда про "одновременное" выполнение нескольких запросов в одном коннекте.
PPS тему по ссылке не перечитывал
...
Рейтинг: 0 / 0
21.02.2022, 11:58
    #40135582
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
hvlad
PS в одном коннекте все действия сериализованы, забудьте навсегда про "одновременное" выполнение нескольких запросов в одном коннекте.
я правильно понимаю, что сейчас не нужно заморачиваться с сериализацией на уровне прикладного клиента при многопоточной работе?
...
Рейтинг: 0 / 0
21.02.2022, 12:22
    #40135593
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
Мимопроходящий
hvlad
PS в одном коннекте все действия сериализованы, забудьте навсегда про "одновременное" выполнение нескольких запросов в одном коннекте.
я правильно понимаю, что сейчас не нужно заморачиваться с сериализацией на уровне прикладного клиента при многопоточной работе?
С точки зрения работы клиента - начиная с 2.5, по идее.
А вот что там само приложение может намудрить без синхронизации - это уже другой вопрос.
...
Рейтинг: 0 / 0
21.02.2022, 12:23
    #40135594
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
терзают меня смутные сомнения...
sysdba22
тут, именно вопрос в том, что одна библиотека обслуживает все аттачменты.
Ну почитайте, что ли, про про многопоточность и как (любой, включая библиотечный), код может работать в разных потоках одного процесса одновременно .
Да, граблей хватает, то это вопрос к п(р)огромисту.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / терзают меня смутные сомнения... / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]