• G GaladrielMap
  • Информация о проекте
    • Информация о проекте
    • Активность
    • Метки
    • Участники
  • Репозиторий
    • Репозиторий
    • Файлы
    • Коммиты
    • Ветки
    • Теги
    • Участники
    • Диаграмма
    • Сравнение
  • Запросы на слияние 0
    • Запросы на слияние 0
  • Пакеты и реестры
    • Пакеты и реестры
    • Реестр контейнеров
  • Мониторинг
    • Мониторинг
    • Метрики
  • Аналитика
    • Аналитика
    • Поток ценности
    • Репозиторий
  • Wiki
    • Wiki
  • Сниппеты
    • Сниппеты
  • Активность
  • Диаграмма
  • Коммиты
Свернуть панель
  • Калачихин Владимир Юрьевич
  • GaladrielMap
  • Wiki
  • architecture

architecture · Изменения

История страницы
upd создал Ноя 16, 2023 по автору Stager's avatar Stager
Показать
Построчно Рядом
architecture.md 0 → 100644
Просмотреть страницу @4fe58113
## Архитектура
### Выбор программной архитектуры
Приложение имеет естественным образом распределённую архитектуру, предполагающую наличие централизованного сервера и какого-то количества клиентов, обращающихся к этому серверу.
"Естественность" наличия центрального сервера определяется тем, что, во-первых, имеется ряд датчиков, физически связанных с плавсредством (или транспортным средстваом), показания которых хотелось бы видеть. Это и эхолот, и метеостанция, датчики двигателя и внутреннего оборудования. Сюда же идейно можно отнести и приёмник сигналов ГеоПозиционной Системы (ГПС), хотя он чаще и не привязан непосредственно к плавсредству.
Другой причиной наличия центрального сервера является желание иметь единый пул навигационной информации,такой как карты, маршруты, лоции и т.п. Эта информация, во-первых, объёмна, а во-вторых, нуждается в периодической актуализации.
Таким образом, даже на малом любительском судне, если мы хотим иметь общую информацию хотя бы на двух экранах -- применение центрального сервера для её представления удобно и оправданно.
Если же мы приняли решение использовать централизованное серверное приложение, то мы можем сузить требования к клиентскому приложению, и получим возможность реализовать его так, чтобы его можно было запустить на возможно более широком спектре пользовательских устройсв. А поскольку почти на всех пользовательских устройствах есть веб-браузер, то выбор способа реализации очевиден -- это должно быть веб-приложение.
Поэтому GalsdrielMap является веб-приложением, ядро которого функционирует на центральном компьютере (сервере), а информация отображается на пользовательских устройствах (планшетах, ноутбуках, смартфонах). При этом пользовательские устройства не подвергаются никакой модификации и на них не ставятся никакие дополнительные программы: достаточно уже имеющегося браузера.
### Выбор оборудования для сервера
Представляется удобным иметь на борту единую точку доступа к Интернет, оснащённую достаточно хорошей антенной, высококачественным сотовым модемом, wi-fi связью высокой пропускной способности. Как правило, такая точка доступа сама по себе представляет собой относительно мощный компьютер общего назначения. Поэтому естественно использовать точку доступа в качестве бортового сервера.
GaladrielMap функционирует на маршрутизаторах под управлением OpenWRT, включая устройства, удовлетворяющие минимальным требованиям этой опреационной системы, а также на устройствах Victron Energy под управлением VenusOS. Нет принципиальных препятствий для функционирования GaladrielMap на любых устройствах под управлением операционных систем семейства Linux, на которые есть возможность установить PHP.
Клонировать репозиторий

Введение

  • Выбор архитектуры
  • Состав программного комплекса
  • Аппаратные требования
  • Общие программные требования
  • Получение, хранение и использование карт
  • Картплотер
    • Основной экран
    • Меню
      • Карты
      • Скорость и направление
      • Пути
      • Маршрут
      • Места и маршруты
      • Человек за бортом
      • Загрузки
      • Параметры
  • Панель приборов