АННОТАЦИЯ

В данном программном документе приведено руководство системного программиста по установке и настройке программы «Программный интерфейс взаимодействия системы отображения метеорологических данных с базой данных измерительной информации», предназначенной для передачи системе отображения метеорологической информации из базы данных.

Общие сведения о системе

Программный интерфейс входит в состав системы отображения метеорологических данных МФ МГТУ им. Н.Э. Баумана. Основные функции программного интерфейса состоят получении, передачи и обработке метеорологической информации в формате JSON.

Структура системы

Программный интерфейс состоит из двух частей: программного интерфейса REST(порт 3000) и программного интерфейса GraphQL(порт 4000). Они круглосуточно работают на сервере, ожидая HTTP-запрос метода GET. При получении нового запроса происходит его обработка, согласно заранее определенному сценарию. Программный интерфейс в ходе своей работы использует Redis - резидентную систему управления базами данных NoSQL, работающую со структурами данных «ключ-значение». Redis работает на порте 6379.

Установка необходимых программных зависимостей

Для функционирования программного интерфейса необходимо инсталлировать резидентную систему управления базами данных класса NoSQL Redis версии 6.0.1. Также необходимо установить программную платформу Node.js версии 12.16.3, а также ряд npm-пакетов и модулей:

express - фреймворк для языка JavaScript

redis - модуль, работающий с базой данных Redis

fs - модуль, позволяющий работать с файловой системой сервера

request - модуль, необходимый для осуществления отправки асинхронных запросов

http-errors - модуль обработчика HTTP-ошибок

path - модуль, помогающий определить путь файла в файловой системе

cookie-parser - модуль обработчика cookie-файлов

morgan - модуль, позволяющий осуществлять логирование и вести системный журнал, в случае неполадок и критических ошибок

moment - модуль, предоставляющий функции для работы со временем

graphql - модуль, предоставляющий возможность проектирования, используя архитектуру GraphQL

express-graphql - модуль, связывающий фреймворк express и graphql

Все вышеперечисленные модули устанавливаются с помощью команды:

$ npm install "имя пакета"

Все вышеописанное программное обеспечение необходимо устанавливать на операционные системы семейства Linux и Windows. При использовании Windows единственным ограничением будет необходимое использование операционной системы Windows 7 или выше.

Настройка программного интерфейса

Для настройки программного интерфейса необходимо скачать архив программных документов, который находится в программном документе «Текст программы». Необходимо перенести папку «routes» в корневую папку проекта, после чего объявить использование в основном файле проекта:

app.use('/Rest',restRouter)
app.use('/GraphQL',GraphQLRouter)

Проверка работоспособности

Для проверки работоспособности программного интерфейса необходимо проверить работоспособность интерфейсов REST и GraphQL. Для этого необходимо отправить два запроса:

Запрос для GraphQL-API:

http://название_домена:4000/graphql?query={calibr(time:"day",date:"2019-04-04",uname:"РОСА-П",serial:"01")}

Запрос для REST-API:

http://название_домена:3000/api/calibr/day/2019-04-04/РОСА-П/01

В результате должны прийти идентичные данные, содержащие откалиброванную метеорологическую информацию за 2019-04-04 с прибора «РОСА-П», имеющего серийный номер «01».

Сообщения системному программисту