Аннотация 2
Abstract 3
Введение 5
Глава 1 Характеристика организации. Анализ существующей системы сервисов 7
1.1 Характеристика организации 7
1.2 Анализ существующей экосистемы сервисов с точки зрения
архитектуры 8
1.3 Микросервисная и реактивная архитектура 13
1.4 Анализ информационной системы учета измерительных
приборов 16
1.5 Постановка задачи по разработке микросервиса 25
Глава 2 Проектирование микросервиса верификации 27
2.1 Требования по разрабатываемому микросервису 27
2.2 Проектирование архитектуры микросервиса верификации 28
2.3 Описание инструментов разработки микросервиса 32
2.4 Разработка диаграммы классов микросервиса 35
Глава 3 Разработка микросервиса верификации 39
3.1 Выбор средств для разработки микросервиса 39
3.2 Реализация основных модулей микросервиса 43
3.3 Тестирование разработанного микросервиса 46
Заключение 49
Список используемых источников 51
Приложение А Код модуля для обобщенного сравнения данных 53
Приложение Б Код модуля для для сравнения представлений конкретно для Точки учета 56
Приложение В Код модуля взаимодействия с базой данных 60
Информационные технологии являются важным аспектом нашей жизни в современном мире. Они позволяют нам хранить, обрабатывать и передавать информацию с помощью различных устройств, таких как компьютеры, смартфоны и планшеты. Они также используются для поддержания связи, работы в онлайн-режиме, управления бизнес-процессами и решения различных задач.
Ввиду широкого распространения информационных технологий и доступа к ним, требуются механизмы проверки корректности, полноты и точности данных. Это важно, потому что неверные данные могут привести к неправильным решениям и ошибкам в работе системы. Одним из таких механизмов является процесс верификации данных.
Верификация данных - это процесс проверки данных различных типов по критериям поступление из доверенного источника, точность, согласованность и соответствие формату представления после выполнения операций миграции, трансформации и других операций с данными. Особую важность верификация данных приобретает в условиях автоматизированной обработки данных в информационных системах, внесении данных в базы данных и при применении технологий машинного обучения при подготовке обучающих и тестовых датасетов.
В качестве методов верификации можно применять проверку идентичности исходных и производных наборов данных путем побайтового сравнения, подсчета контрольных сумм, вычитки текстов и другие методы.
Верификация данных в микросервисной архитектуре важна, потому что компоненты-сервисы обычно разрабатываются, выпускаются и управляются независимо друг от друга. Это может привести к тому, что данные, передаваемые между ними, не будут соответствовать ожидаемым форматам или содержать недопустимые значения. Чтобы избежать этого, необходимо выполнять верификацию данных, чтобы убедиться, что они соответствуют требованиям...
Данная выпускная квалификационная работа выполнена с целью разработки отказоустойчивых, высоконагруженных и распределенных систем с использованием технологий построения микросервисов, основанных на реактивной архитектуре.
Информационные системы, разработанные с соблюдением принципов построения микросервисов, в свою очередь основанных на принципах реактивных систем, гарантируют соответствие требованиям современного пользователя.
Выполняя данную выпускную квалификационную работу, мной были решены следующие задачи:
- Выполнен анализ существующих сервисов экосистемы ООО Квартплата 24, представляющими из себя сервисы, спроектированными по принципам монолитной архитектуры;
- Рассмотрены преимущества и недостатки построения сервиса, основанного на монолитной архитектуре;
- Описана альтернатива, в виде проектирования приложения с использованием микросервисной архитектуры;
- Проведено сравнение микросервисной и монолитной архитектуры, обозначены преимущества и недостатки;
- Подробно рассмотрены ключевые требования к
разрабатываемому микросервису;
- Спроектирована архитектура разрабатываемого микросервиса с использованием фреймворка Lagom, языком программирования для разработки был выбран Scala;
- Найдено решение для верификации данных через выделенный для этого микросервис;
- Описаны команды, которые в состоянии обрабатывать данный микросервис.
Основываясь на требованиях к данной выпускной квалификационной работы, был спроектирован и реализован горизонтально масштабируемый, отказоустойчивый, гибкий микросервис, основной функцией которого является верификация данных, находящихся в разных информационных системах.
Выполнено тестирование функционала разработанного микросервиса верификации данных.
Результаты данной выпускной квалификационной работы имеют практический интерес и могут быть рекомендованы разработчикам отказоустойчивых и высоконагруженных информационных систем.