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