3.3 KiB
Архитектура проекта
Общий стек: NixOS, Python (бэкенд, серверная часть) и Flutter (пользовательское приложение).
Мобильное приложение: Flutter/Dart выбрали из-за скорости и плавности работы UI, а также очень соблазнительна их кроссплатформенность.
Бэкенд: NixOS + Python. NixOS выбран из-за воспроизводимости, Python из-за универсальности и популярности.
Сервис-провайдеры
Нам не платит ни один сервис-провайдер! Мы никак с ними не аффилированы. Выбирали исключительно из профессиональных соображений. Но не исключаем партнерство в будущем.
Хостинг
Hetzer выбрали из-за низкой цены и приемлемый уровень сервиса, качественного REST API. Сервис не был замечен в проблемах с приватностью и сбором данных.
Кандидаты:
- Свой личный железный сервер. Сейчас наш основной приоритет;
- Сервис-провайдер, который предоставит API для разворачивания железного сервера. Вне FVEY;
- OVH;
- Scaleway;
- DigitalOcean.
Еще есть бесплатные вроде Oracle Cloud, но там где Вы не платите, обычно Вы — товар.
DNS
Cloudlare надежность, бесплатность. Вероятно, собирает данные, иначе сложно объяснить зачем бесплатно проксировать чужой трафик. В нашем случае используем только как DNS-сервер и ничего не проксируем. В будущем заменим на self-hosted DNS, как только решим проблему надежности.
Хранилище резервных копий
Backblaze бесплатно и в разы дешевле AWS. Не замечен в сборе данных. Публикует в open source наработки железа, на котором работает. Также, делится очень полезной статистикой по отказам дисков, на основе которых можно выбрать себе наиболее надежный и проверенный. В будущем, возможно, заменим на self-hosted решение или p2p. Сейчас это не основной приоритет, так как данные шифруются, а сервис-провайдер видит только IP-адрес Вашего сервера (а не домашний).