KIS MQTT (сервис) — различия между версиями
Материал из ИбисоПедии
Admin (обсуждение | вклад) (→файл kis_mqtt.ini) |
Admin (обсуждение | вклад) (→файл kis_mqtt.ini) |
||
| Строка 39: | Строка 39: | ||
[MQTT] | [MQTT] | ||
| − | ;адрес сервера где работает брокер MQTT brokerhost=192.168.1.16 brokerport=1883 [Web] | + | ;адрес сервера где работает брокер MQTT |
| − | ;Номер порта, который будет открыт службой для мониторинга состояния службы (по умолчанию 10033) Port=10033 | + | brokerhost=192.168.1.16 |
| − | [Postgrtesql] username=KIS''MQTT''SRV password=sys1okan | + | brokerport=1883 [Web] |
| − | ; Интервал для проверки | + | ;Номер порта, который будет открыт службой для мониторинга состояния службы (по умолчанию 10033) |
| − | ; | + | Port=10033 |
| + | [Postgrtesql] | ||
| + | username=KIS''MQTT''SRV | ||
| + | password=sys1okan | ||
| + | ; Интервал для проверки соединения | ||
| + | PingInterval=60 | ||
| + | ; интервал для переподключения в случае обрыва | ||
| + | ReconnectInterval=60 | ||
= Обновление = | = Обновление = | ||
Версия 09:21, 16 июля 2019
Внимание! оригинал этого файла в формате markdown лежит kis_services\trunk\kis_mqtt\doc\readme.md
Содержание
Назначение
Получение сообщений от БД КИС через механизм PG_NOTIFY и отправка их брокеру сообщений MQTT для дальнейшей рассылки всем заинтересованным клиентам. Как правило, это уведомления клиентских приложений о событиях в системе, таких как:
- "госпитализация",
- изменение статуса пациента,
- выход новой версии программы и т.п.
Есть несколько каналов (топиков) в MQTT брокере, куда отправляются сообщения:
- список госпитализированных
- список выписанных
- системный канал
Состав
- kismqttsrv.exe - файл службы Win32
- kismqttctl.exe - управляющая программа
- kis.ini - кнфигурационный файл для подключения к БД
- kis_mqtt.ini настройки службы
Установка
- Скопировать файлы на сервер приложений
- Настроить файлы kis.ini и kis_mqtt.ini
- запустить с правами администратора kismqttsrv.exe /install
- С помощью программы kismqttctl.exe запустить сервис (или через оснастку "службы") и убедится, что он работает
Настройка
файл kis.ini
см. соответсвующий раздел КИС
файл kis_mqtt.ini
[MQTT]
;адрес сервера где работает брокер MQTT brokerhost=192.168.1.16 brokerport=1883 [Web] ;Номер порта, который будет открыт службой для мониторинга состояния службы (по умолчанию 10033) Port=10033 [Postgrtesql] username=KISMQTTSRV password=sys1okan ; Интервал для проверки соединения PingInterval=60 ; интервал для переподключения в случае обрыва ReconnectInterval=60
Обновление
- С помощью программы kismqttctl.exe или вручную остановить сервис KIS_MQTT
- Обновить файлы
- Запустить службу
Мониторинг
Текущее состояние сервиса можно увидеть:
- На сервере с помощью управляющей программы kismqttctl.exe
- Сервис сохраняет информацию о своей работе в текстовый файл в папке LOG в месте установки
- Через браузер http://<сервер>:<port>/admin
- Через АРМ «Администратор» - Сервисы
- Сервис поддерживает стандартное API KIS для мониторинга сервисов
Реализация
Сервис и управляющая программа собраны с помощью Delphi XE10. Для сборки сервиса требуются библиотеки:
- TMS MQTT client
- Synopse mORMot-master
- JEDI CODE library
Для сборки управляющей программы:
- DevExpressVCL
- JEDI CODE library
Возможна сборка сервиса под платформы
- Linux
- Andtroid
Структура исходных кодов
Исходные код находятся по пути: kis-z\server\kis_mqtt. Структура:
- Source – исходные коды
- Source\StressTest – нагрузочное тестирование через многопоточные приложения
- Test – скрипты для нагрузочных тестов клиентов с помощью kis_z