- Назначение и роль в системе
- Архитектура и взаимодействие компонентов
- Требования перед запуском
- Параметры конфигурации
- Основные секции конфигурации
- Параметры запуска Сервера
- Зависимости от SQL Server
- Хранение данных
- Модули Сервера
- Обновления и версионирование
- Резервное копирование и восстановление
- Поддержка PostgreSQL
- REST API
- Мониторинг и оптимизация
- Внешние модули и расширения
- Системные требования для Сервера
- Заключение
Сервер ЛЭРС УЧЕТ — это центральный компонент системы, который управляет взаимодействием всех элементов архитектуры и обеспечивает функционирование всей системы учета энергоресурсов.
Назначение и роль в системе
Сервер ЛЭРС УЧЕТ представляет собой Windows-службу с названием «ЛЭРС УЧЁТ — сервер» (имя службы: LersServer). Это не физический компьютер, а программа, которая устанавливается в папку %ProgramFiles%\LERS\Server.
Основные функции Сервера ЛЭРС УЧЕТ:
- Обмен данными между компонентами системы (Служба опроса, сервер БД, Рабочее место оператора)
- Проверка прав доступа при подключении пользователя и при выполнении операций
- Уведомление клиентских приложений о событиях (например, при создании нового объекта учета на всех АРМ автоматически обновляется список объектов)
- Загрузка обновлений компонентов системы с сайта разработчика
- Формирование очереди заданий для управления опросом точек учета
- Протоколирование работы в журналах приложения и системном журнале Windows
- Анализ данных опроса и уведомление клиентских приложений о нештатных ситуациях
- Предоставление REST API для взаимодействия с системой из внешних программ
- Предоставление Web-интерфейса для просмотра данных и управления системой
Архитектура и взаимодействие компонентов
Сервер ЛЭРС УЧЕТ находится в центре трехуровневой архитектуры системы:
textРабочие места операторов (АРМ) ────┐
Службы опроса (PollService) ────┤──→ Сервер ЛЭРС УЧЕТ ──→ SQL Server / PostgreSQL
Веб-интерфейс ────┘ (LersServer) (база данных)
К Серверу подключаются:
- Любое количество рабочих мест оператора (АРМ)
- Любое количество служб опроса
- Веб-интерфейс
- Внешние модули и приложения через REST API
Сам Сервер подключается к:
Требования перед запуском
Обязательное условие: Перед запуском Сервера ЛЭРС УЧЕТ должен быть запущен сервер баз данных (MS SQL Server или PostgreSQL).
Порядок запуска сервисов:
- SQL Server
- ЛЭРС УЧЕТ — Сервер
- Службы опроса и АРМ операторов
Рекомендация по производительности: Сервер ЛЭРС УЧЕТ рекомендуется устанавливать на отдельный более мощный компьютер для достижения наилучшей производительности.
Параметры конфигурации
Основной конфигурационный файл: Lers.Server.xml
Расположение файла:
Если файл не существует, используются параметры по умолчанию.
Требование кодировки: Файл должен быть набран в кодировке UTF-8.
Пример стандартного содержимого файла:
xml<?xml version="1.0" encoding="utf-8"?>
<configuration>
<network>
<listenPort>10000</listenPort>
<listenAddress></listenAddress>
</network>
<dataBase>
<sqlServer>(local)\LERS</sqlServer>
<dataBaseName>LERS</dataBaseName>
</dataBase>
</configuration>
Основные секции конфигурации
| Параметр | По умолчанию | Описание |
|---|---|---|
| listenPort | 10000 | Порт, на котором сервер ожидает подключений |
| listenAddress | (не задан) | IP-адрес для прослушивания (если не задан, слушает все адреса) |
| Параметр | По умолчанию | Описание |
|---|---|---|
| sqlServer | (local)\LERS | Имя сервера БД и экземпляра |
| databaseName | LERS | Наименование базы данных |
| commandTimeout | 60 | Таймаут на выполнение запроса к БД (в секундах) |
| Параметр | По умолчанию | Описание |
|---|---|---|
| enableErrorReporting | True | Отправлять ли отчеты об ошибках |
| EnableIPBanLog | True | Включить ведение журналов IPBan |
Параметры запуска Сервера
Учётная запись для запуска сервиса:
- Windows: По умолчанию
NETWORK SERVICE(или пользовательская учётная запись, если требуется специальный доступ) - Требуемые права: Достаточно прав пользователя (не требуются права администратора)
Управление сервисом:
- Запуск/остановка: Через диспетчер служб Windows (
services.msc) или командную строку - Команда для проверки статуса:
sc query LersServer
Зависимости от SQL Server
Для автоматического запуска Сервера ЛЭРС УЧЕТ после запуска SQL Server необходимо настроить зависимость служб:
Способ настройки через командную строку:
bashsc config "LersServer" depend= "MSSQL$LERS"
Где MSSQL$LERS — имя службы SQL Server (может отличаться в зависимости от конфигурации).
После настройки:
- При перезагрузке Сервер ЛЭРС УЧЕТ будет запускаться только после полного запуска SQL Server
- При остановке SQL Server служба Сервера ЛЭРС УЧЕТ также будет остановлена
Хранение данных
- Все считанные и рассчитанные данные сохраняются в единой базе данных
- База доступна только для Сервера ЛЭРС УЧЕТ
- Все остальные приложения запрашивают данные через Сервер
Глубина хранения:
- Ограничена только объёмом жёсткого диска
- Настраивается в системных параметрах
- Для SQL Server Express действует ограничение 10 ГБ
Хранение данных по точкам учета:
- Данные хранятся в разрезе точек учета, а не устройств
- При замене оборудования исторические данные сохраняются
- Ведение учета возможно и без оборудования (ручной ввод, импорт)
Единицы измерения:
- Все архивы перед сохранением приводятся к единым системным единицам измерения
- Это позволяет настраивать диагностику независимо от типа приборов
Модули Сервера
- Модуль опроса — управление опросом точек учета
- Модуль расчета и хранения — обработка и сохранение данных
- Модуль диагностики — анализ нештатных ситуаций
- Модуль REST API — взаимодействие с внешними системами
- Модуль веб-интерфейса — предоставление веб-доступа
- Модуль обновлений — управление обновлениями компонентов
- Модуль аутентификации — проверка прав доступа
Расширенные настройки модулей:
Расширенные настройки можно изменить в файле Lers.Server.xml в секции <modules>:
xml<configuration>
<modules>
<calc>
<!-- Настройки модуля расчета -->
</calc>
<diag>
<!-- Настройки модуля диагностики -->
</diag>
</modules>
</configuration>
Важное предупреждение: Не изменяйте расширенные настройки без консультации с технической поддержкой, так как неправильные изменения могут повлиять на функционирование системы.
Обновления и версионирование
На сервере:
- Сервер должен обновляться из источника «Серверы обновлений ЛЭРС УЧЕТ»
- Необходимо включить раздачу обновлений на сервере
- По умолчанию используется порт 10080 для раздачи обновлений
На клиентах (АРМ и службы опроса):
- Должны получать обновления с сервера ЛЭРС УЧЕТ
- Адрес сервера указывается в параметрах обновления
- При установке флага «Обновлять внешние модули» клиенты получат установленные администратором модули
Преимущества правильной настройки обновлений:
- Все компоненты системы имеют одинаковую версию
- Все клиентские компьютеры получают установленные модули
- Централизованное управление версиями
Резервное копирование и восстановление
Автоматическое резервное копирование:
- Настраивается в системных параметрах: Администрирование → Системные параметры → Обслуживание БД
- Включить: Автоматически создавать резервную копию БД
- Задать расписание (время и периодичность)
Требование:
- Учётной записи, под которой запущен сервер, необходимо разрешение на создание БД (
CREATE DATABASE) - Необходимо сохранить версию системы ЛЭРС УЧЕТ для данной резервной копии
Восстановление БД:
- Пуск → Все программы → ЛЭРС УЧЕТ → Сервис → Восстановление базы данных
- Выберите файл резервной копии
- Дождитесь завершения процесса
- SQL Server Express поддерживает БД до 10 ГБ
- Для больших систем требуется коммерческая версия SQL Server или PostgreSQL
Поддержка PostgreSQL
Экспериментальная поддержка начиная с версии 3.46:
- Возможность выбора между MS SQL Server и PostgreSQL при установке
- Postgres поддерживается в тестовом режиме
- Для коммерческих систем рекомендуется SQL Server
Возможное преобразование данных:
- Запланирована утилита копирования данных с SQL Server на PostgreSQL
- Будут скопированы: объекты, оборудование, подомовые точки, подключения, параметры автоопроса
REST API
- Взаимодействие с сервером из внешних программ
- Создание интеграций с другими системами
- Автоматизация процессов
- Документация доступна через Swagger:
http://адрес_сервера:10000/api/swagger
Мониторинг и оптимизация
Протоколирование работы:
- Журнал сервера приложений
- Системный журнал Windows
- Журнал подключений
- Журнал действий пользователей
- Журнал отправленных сообщений
Все журналы доступны через меню Администрирование в АРМ оператора.
Внешние модули и расширения
Сервер ЛЭРС УЧЕТ поддерживает расширение функциональности через внешние модули, разработанные с помощью Lers Framework:
- Встраивание модулей в АРМ оператора
- Создание сторонних программ для интеграции
- Удалённое управление оборудованием
- Примеры на GitHub: https://github.com/lers-uchet/
Системные требования для Сервера
| Компонент | Требование |
|---|---|
| ОС | Windows 10/11 или Windows Server 2016+ (также поддерживается Linux) |
| Процессор | от 1600 МГц |
| ОЗУ | 4-8 ГБ (зависит от количества объектов) |
| Жесткий диск | 1 ГБ для сервера + место для БД |
| Сеть | Ethernet 100 Мбит/с+ |
Рекомендуемые требования для высоконагруженных систем:
| Количество объектов | ОЗУ | Диск для журналов |
|---|---|---|
| 500 | 8 ГБ | 3 ГБ |
| 2000 | 16 ГБ | 5 ГБ |
| 10000+ | 32+ ГБ | 10+ ГБ |
Заключение
Сервер ЛЭРС УЧЕТ является критическим компонентом системы, обеспечивающим:
- Централизованное управление всеми компонентами
- Безопасность через проверку прав доступа
- Масштабируемость благодаря поддержке множественных клиентов и служб
- Надежность через резервное копирование и восстановление
- Гибкость через API и внешние модули
- Современность благодаря регулярным обновлениям
Правильная конфигурация и мониторинг сервера — залог стабильной работы всей системы учета энергоресурсов в организации.



