====== АННОТАЦИЯ ======
В данном программном документе приведено руководство системного программиста по установке и настройке WEB-сервиса для управления устройством "бегущая строка".
====== Общие сведения о системе ======
Функциональным назначением системы является приём, сохранение и предоставление данных, полученных в процессе работы с WEB-интерфейсом и мобильным приложением.
Основные функции системы состоят в приёме и обработке данных JSON формата, сохранение и предоставлении по запросу, для последующей обработкой операторами.
Для функционирования системы требуется серверная операционная система, система управления базами данных, веб-сервер с поддержкой языка программирования Java и программный код.
====== Структура системы ======
Система приёма, сохранения и предоставления данных, полученных в процессе работы с WEB-интерфейсом и мобильным приложением состоит из комплекса программного обеспечения, необходимого для её выполнения. На серверной операционной системе запущен веб-сервер, ожидающий HTTP запроса. При вхождение запроса выполняется сценарий, зависящий от вызываемого при запросе файла.
====== Настройка системы ======
Подготовка системы к работе делится на несколько этапов, выполнение которых будет рассматриваться на примере системы GNU/Linux Debian 9.
===== 1 Создание базы данных =====
==== Установка СУБД MySQL ====
Обновите базу пакетов
$ apt-get update
Установите пакет MySQL-server
$ sudo apt-get install mysql-server
Если будет просить ввести root пароль, то оставьте его пустым
Инициализируйте систему безопасности MySQL
$ mysql_secure_installation
==== Создание и настройка базы данных ====
Зайдите в mysql и создайте новую базу данных:
$ mysql –u root –p
(после нужно ввести пароль)
Затем необходимо создать базу данных
CREATE DATABASE RunningString;
Если ошибок нет, то база успешно создана.
Создайте пользователя, под которым сайт будет работать с БД:
CREATE USER ‘Amind’@’localhost’ IDENTIFIED BY ‘Abcd123’;
Логин и пароль можно изменить в файле application.properties, находящийся по пути rString\src\main\resources
Выдайте пользователям привилегии:
$ GRANT ALL PRIVILEGES ON production.* TO ‘Amind’@’localhost’ IDEN-TIFIED BY ‘Abcd123’;
Создавать структуру базы данных не является необходимым, поскольку при запуске WEB-сервиса она создастся автоматически.
===== 2 Установка зависимостей WEB-сервиса =====
==== Установка пакета JDK ====
Для установки необходимо ввести
sudo apt -y install openjdk-8-jdk
==== Установка зависимости Gradle ====
Для установки необходимо ввести
sudo install gradle
===== 3 Удалённый доступ к файлам веб-сервиса =====
Установите SSH
$ apt-get install openssh-server
Запустите сервис ssh
$ service ssh start
Для загрузки файла на сервер используйте команду
$ scp /path/to/file.http User@remote.host:/var/www/site.ru
Для загрузки папки на сервер используйте команду с ключом –r
$ scp –r path/to/dir User@remote.host:/var/www/site.ru
Для скачивания с сервера на локальную машину используйте команду
$ scp User@remote.host:/var/www/site.ru/file.http local/path/to/dir
===== 4 Запуск WEB-сервиса =====
Для запуска сервиса необходимо перейти в его корень и ввести команду
gradle BootRun
После чего сервис сам установит оставшиеся зависимости и при возникновении ошибки отобразит её.
===== 5 Обязательные изменения в текстах программ =====
1. Откройте в текстовом редакторе файл /core/baseinfo.php.
2. Замените в нём:
* 'spring.datasource.username' – если необходимо изменить имя пользователя для доступа к базе данных WEB-сервиса.
* 'spring.datasource.password' – замените на пароль пользователя базы данных.
* 'server.http.port' – Замените порт, по которому осуществляется HTTP запросы
* 'server.port' – Замените порт, по которому осуществляется HTTPS запросы.
3. Сохраните изменения
====== Проверка системы ======
Для проведения проверки системы рекомендуется внести данные в ручном режиме через веб-интерфейс, или же провести тестовую передачу данных с устройства. После выполнение внесения данных, проверьте хранимые данные SQL запросом:
select * from massages
select * from string
select * from string_massage
====== Сообщения системному программисту ======
При запуске WEB-сервиса в консоли Фреймворк будет выводить возможные сообщения ошибок.
====== ПРИЛОЖЕНИЕ 1 ======
===== Структура базы данных =====
Для хранения данных используется следующая структура базы данных:
1. **massages(id,showed,string_text, string_color,string_color_type,string_speed)** – таблица содержащая данные о сообщениях.
*Столбцы:
***id** – уникальный номер сообщения(id).
***showed** – флаг отображения сообщения.
***string_text** – текст сообщения.
***string_color** – статичный цвет сообщения.
***string_color_type** – тип анимации цвета
***string_speed** – скорость анимации сдвига сообщения.
2. **string(id, code, name)** – таблица содержащая данные о устройствах.
*Столбцы:
***id** – уникальный номер устройства(id).
***code** – уникальный текстовый идентификатор устройства.
***name** – наименование места размещения устройства, отображаемое пользователю.
3. **string_massage(massage_id, string_id)** – таблица реализующая связь "многие ко многим" между таблицами string и massages.
*Столбцы:
***massage_id** – номер сообщения.
***string_id** – номер устройства.
Далее представлена структура базы данных и взаимосвязь таблиц на рисунке 1.
{{:doc:1807:database.png?400|}}
=== Рисунок 1. ===
----