Асинхронный TCP-сервер для интеграции лабораторного оборудования.
Проект предназначен для приема, обработки и передачи данных от внешних устройств с возможностью дальнейшего расширения поддержки различных лабораторных протоколов.
На текущем этапе проект развивается в направлении интеграции со следующим оборудованием:
- Urit 5160Vet
- Accenty M320
- Seamaty SMT-120VP
Happy Laba — это open source проект, целью которого является создание универсального слоя интеграции между лабораторным оборудованием и информационными системами.
Проект развивается поэтапно: от базовой серверной инфраструктуры к полноценной платформе для обработки лабораторных данных, поддержки различных протоколов и дальнейшего расширения функциональности.
Если проект показался вам интересным, вы можете следить за его развитием через репозиторий, создавать Issues, предлагать улучшения или участвовать в разработке.
Релиз 0.0.4 станет первым MVP-релизом проекта Happy Laba.
Цель данного этапа — завершить формирование базовой полноценной версии TCP-сервера для интеграции с лабораторным оборудованием, которая будет обладать необходимым набором функций для использования в реальных сценариях эксплуатации.
После выхода версии 0.0.4 проект перейдет в стадию стабилизации и дальнейшего развития архитектуры. Основной фокус последующих версий будет направлен на оптимизацию производительности, улучшение внутренних механизмов и развитие существующей архитектуры без кардинального изменения базовой концепции.
- Завершение формирования MVP-архитектуры приложения.
- Поддержка полного жизненного цикла TCP-каналов и клиентских сессий.
- Улучшение механизмов обработки входящих и исходящих сообщений.
- Расширение системы конфигурации устройств.
- Подготовка стабильного API для добавления новых лабораторных протоколов.
- Улучшение обработки ошибок и восстановления соединений.
- Финализация базовых механизмов логирования и мониторинга.
- Расширение покрытия тестами основных компонентов системы.
- Подготовка документации по развертыванию и интеграции.
Версия 0.0.4 должна стать минимально полноценной рабочей версией Happy Laba, которая позволит использовать проект как основу для интеграции лабораторного оборудования с информационными системами.
После выхода версии 0.0.4 новые релизы будут направлены преимущественно на:
- архитектурные улучшения;
- оптимизацию производительности;
- повышение надежности и отказоустойчивости;
- улучшение внутренних механизмов обработки данных;
- расширение поддерживаемых протоколов и оборудования;
- улучшение качества кода и сопровождаемости проекта.
Версия 0.0.4 является переходным этапом от активного формирования структуры проекта к этапу стабильного развития и совершенствования платформы.
- Добавлена поддержка нескольких TCP-каналов.
- Добавлен Runtime для управления жизненным циклом приложения.
- Добавлена поддержка конфигурации нескольких устройств через YAML.
- Добавлена проверка доступности TCP-портов.
- Добавлена проверка уникальности портов.
- Добавлен SessionContext для хранения состояния активных сессий.
- TCPServer переименован в TCPChannel.
- Переработана архитектура приложения для поддержки нескольких каналов.
- Переработан процесс инициализации приложения.
- Обновлен механизм управления сессиями с учетом типа канала.
- Унифицировано логирование.
- Переработана структура конфигурации приложения.
- Выполнен рефакторинг компонентов и улучшено разделение ответственности.
- Исправлено завершение TCP-каналов.
- Исправлено завершение сессий по типу канала.
- Исправлены ошибки инициализации приложения.
- Исправлена обработка отмены фоновых задач.
- Исправлены ошибки валидации конфигурации.
- Обновлены модульные тесты.
- Тесты адаптированы под многоканальную архитектуру.
- Исправлены тесты SessionManager.
Подробная история изменений публикуется в CHANGELOG.md.