KIS MQTT (сервис) — различия между версиями
Материал из ИбисоПедии
Admin (обсуждение | вклад) (→файл kis_mqtt.ini) |
|||
| (не показаны 2 промежуточные версии 2 участников) | |||
| Строка 20: | Строка 20: | ||
* kis''mqtt''srv.exe - файл службы Win32 | * kis''mqtt''srv.exe - файл службы Win32 | ||
* kis''mqtt''ctl.exe - управляющая программа | * kis''mqtt''ctl.exe - управляющая программа | ||
| − | * kis.ini - | + | * kis.ini - конфигурационный файл для подключения к БД |
| − | * kis_mqtt.ini настройки службы | + | * kis_mqtt.ini - настройки службы |
= Установка = | = Установка = | ||
| Строка 27: | Строка 27: | ||
# Скопировать файлы на сервер приложений | # Скопировать файлы на сервер приложений | ||
# Настроить файлы kis.ini и kis_mqtt.ini | # Настроить файлы kis.ini и kis_mqtt.ini | ||
| − | # | + | # Запустить с правами администратора kis''mqtt''srv.exe /install |
# С помощью программы kis''mqtt''ctl.exe запустить сервис (или через оснастку "службы") и убедится, что он работает | # С помощью программы kis''mqtt''ctl.exe запустить сервис (или через оснастку "службы") и убедится, что он работает | ||
| Строка 34: | Строка 34: | ||
== файл kis.ini == | == файл kis.ini == | ||
| − | см. | + | см. соответствующий раздел КИС |
== файл kis_mqtt.ini == | == файл kis_mqtt.ini == | ||
[MQTT] | [MQTT] | ||
| − | ;адрес сервера где работает брокер MQTT brokerhost=192.168.1.16 brokerport=1883 [Web] | + | ;адрес сервера где работает брокер MQTT |
| − | ;Номер порта, который будет открыт службой для мониторинга состояния службы (по умолчанию 10033) Port=10033 | + | brokerhost=192.168.1.16 |
| − | + | brokerport=1883 [Web] | |
| − | ; Интервал для проверки | + | ;Номер порта, который будет открыт службой для мониторинга состояния службы (по умолчанию 10033) |
| − | ; | + | Port=10033 |
| + | [Postgrtesql] | ||
| + | username=KIS''MQTT''SRV | ||
| + | password=sys1okan | ||
| + | ; Интервал для проверки соединения | ||
| + | PingInterval=60 | ||
| + | ; интервал для переподключения в случае обрыва | ||
| + | ReconnectInterval=60 | ||
= Обновление = | = Обновление = | ||
Текущая версия на 10:54, 29 октября 2020
Внимание! оригинал этого файла в формате 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