--- title: "Архитектура проекта" linkTitle: "Архитектура" weight: 1 date: 2022-01-09 description: > Как организован проект и как он работает. --- Да, вы можете использовать kubernetes. Но зачем, если неизменяемость обеспечивается благодаря NixOS? **Пользовательское приложение:** [Flutter](https://flutter.dev/)/[Dart](https://dart.dev/) выбрали из-за скорости и плавности работы UI, а также очень соблазнительна их кроссплатформенность. **Серверная сторона**: [NixOS](https://nixos.org/) + [Python](https://www.python.org/). NixOS выбран из-за воспроизводимости, Python из-за универсальности и популярности. # Сервис-провайдеры **Нам не платит ни один сервис-провайдер!** Мы никак с ними не аффилированы. Выбирали исключительно из профессиональных соображений. Но не исключаем партнерство в будущем. ### Хостинг SelfPrivacy поддерживает два хостинг провайдера: [Hetzer](https://www.hetzner.com/) и [DigitalOcean](https://digitalocean.com) Оба были выбранны из-за низкой цены и приемлемого уровня сервиса, качественного REST API. Кандидаты: - Свой личный железный сервер. **Сейчас наш основной приоритет**; - Сервис-провайдер, который предоставит API для разворачивания железного сервера. Вне [FVEY](https://en.wikipedia.org/wiki/Five_Eyes); - OVH - Scaleway Еще есть бесплатный [Oracle Cloud](https://docs.oracle.com/en-us/iaas/Content/FreeTier/freetier_topic-Always_Free_Resources.htm), но там где вы не платите, обычно вы и есть товар. ### DNS На выбор [Cloudlare](https://cloudflare.com), [deSEC](https://desec.io/) или [DigitalOcean DNS](https://www.digitalocean.com/). [deSEC](https://desec.io/) — более приватный вариант, рекомендуется по умолчанию. [Cloudlare](https://cloudflare.com) и [DigitalOcean DNS](https://www.digitalocean.com) вероятно, собирают данные в режиме проксирования трафика, иначе сложно объяснить, зачем предоставлять подобное бесплатно. **В нашем случае мы ничего не проксируем, а используем их только как DNS-сервер.** В будущем сделаем self-hosted DNS, как только решим проблему надежности. ### Резервные копии Испольуем — [Backblaze](https://www.backblaze.com/) Провайдер бесплатен (первые 20гб) и в разы дешевле AWS, не замечен в сборе данных. [Публикует](https://www.backblaze.com/blog/open-source-data-storage-server/) в open source наработки железа, на котором работает. Также [делится](https://www.backblaze.com/b2/hard-drive-test-data.html) очень полезной статистикой по отказам дисков, на основе которых можно выбрать себе наиболее надежный и проверенный. В будущем, возможно, заменим на self-hosted решение или p2p. **Сейчас это не основной приоритет, так как данные шифруются, а сервис-провайдер видит только IP-адрес вашего сервера, а не устройства с приложением.**