Стартовая страница › Форумы › Разработка и интеграция › Свой тип канала связи в коммуникаторе
Помечено: Scada6, канал связи, Коммуникатор
- В этой теме 7 ответов, 3 участника, последнее обновление 3 года, 9 месяцев назад сделано
Romiros.
-
АвторЗаписи
-
18.10.2022 в 09:07 #25500
Romiros
УчастникДобрый день. Возможно ли в коммуникаторе добавить свой тип канала связи, по примеру MQTT-клиент? Речь про версию 6.
Например я создаю канал связи с БД (host, login и т.д.), который будет подключаться к БД при старте линии, а потом все устройства на линии уже используют его.
Просто к чему я это. На линии десятки КП подключаются к одной и той же БД. Каждому устройству прописывать одни и те же данные подключения очень неудобно. Можно конечно прописать их в пользовательские параметры линии и вытягивать в драйвере, но хотелось бы чтобы все устройства использовали одно подключение к БД, поскольку connect/disconnect довольно дорогая по времени операция.
18.10.2022 в 09:27 #25502
manjey73УчастникНаверное тут нужно городить свой DrvCnlMyCannel на базе какого-то из…
18.10.2022 в 09:50 #25508Romiros
УчастникСпасибо, похоже на то. Буду разбираться.
18.10.2022 в 12:35 #25533
MikhailМодераторДобрый день!
но хотелось бы чтобы все устройства использовали одно подключение к БД
Практически все коннекторы используют пул соединений. То есть вы можете спокойно в каждом КП создать новое соединение. Его нужно открывать перед использованием и сразу затем закрывать. Следующее КП, если строка соединения совпадает, не будет подключаться заново, а возьмет общее соединение из пула. Чтобы увидеть, что всё работает корректно, нужно средствами СУБД посмотреть открытые соединения.
18.10.2022 в 12:37 #25534
MikhailМодераторпоскольку connect/disconnect довольно дорогая по времени операция
При вызове Close реальное соединение обычно не закрывается. Конечно тут нужно копать, но общая идея именно такова.
В общем, канал связи свой создать можно, но при работе с БД в этом, скорее всего, нет смысла.
18.10.2022 в 12:39 #2553518.10.2022 в 12:40 #25536
manjey73УчастникИ кстати ведь можно открыть первым КП в опросе канал и не закрывать его пока не произойдет Терминат линии…
Так будет проще даже.Через общие свойства драйвер может проверять легко открыт коннект или нет.
з.ы. в драйвере счетчика Меркурий проделывал подобную процедуру для посылки широковещательной команды на линии. Работает. Должно и тут сработать.
18.10.2022 в 14:24 #25563Romiros
УчастникСпасибо за информацию, буду думать.
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.