Свой тип канала связи в коммуникаторе

Стартовая страница Форумы Разработка и интеграция Свой тип канала связи в коммуникаторе

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Автор
    Записи
  • #25500
    Romiros
    Участник

    Добрый день. Возможно ли в коммуникаторе добавить свой тип канала связи, по примеру MQTT-клиент? Речь про версию 6.

    Например я создаю канал связи с БД (host, login и т.д.), который будет подключаться к БД при старте линии, а потом все устройства на линии уже используют его.

    Просто к чему я это. На линии десятки КП подключаются к одной и той же БД. Каждому устройству прописывать одни и те же данные подключения очень неудобно. Можно конечно прописать их в пользовательские параметры линии и вытягивать в драйвере, но хотелось бы чтобы все устройства использовали одно подключение к БД, поскольку connect/disconnect довольно дорогая по времени операция.

    #25502
    manjey73
    Участник

    Наверное тут нужно городить свой DrvCnlMyCannel на базе какого-то из…

    #25508
    Romiros
    Участник

    Спасибо, похоже на то. Буду разбираться.

    #25533
    Mikhail
    Модератор

    Добрый день!

    но хотелось бы чтобы все устройства использовали одно подключение к БД

    Практически все коннекторы используют пул соединений. То есть вы можете спокойно в каждом КП создать новое соединение. Его нужно открывать перед использованием и сразу затем закрывать. Следующее КП, если строка соединения совпадает, не будет подключаться заново, а возьмет общее соединение из пула. Чтобы увидеть, что всё работает корректно, нужно средствами СУБД посмотреть открытые соединения.

    #25534
    Mikhail
    Модератор

    поскольку connect/disconnect довольно дорогая по времени операция

    При вызове Close реальное соединение обычно не закрывается. Конечно тут нужно копать, но общая идея именно такова.

    В общем, канал связи свой создать можно, но при работе с БД в этом, скорее всего, нет смысла.

    #25535
    Mikhail
    Модератор

    Например, здесь постоянно Open и Close для соединения.

    #25536
    manjey73
    Участник

    И кстати ведь можно открыть первым КП в опросе канал и не закрывать его пока не произойдет Терминат линии…
    Так будет проще даже.

    Через общие свойства драйвер может проверять легко открыт коннект или нет.

    з.ы. в драйвере счетчика Меркурий проделывал подобную процедуру для посылки широковещательной команды на линии. Работает. Должно и тут сработать.

    #25563
    Romiros
    Участник

    Спасибо за информацию, буду думать.

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Для ответа в этой теме необходимо авторизоваться.