2025-12-27, #Сайт
v2.000
Микросервисы
В 2025 году, мы работали над микросервисами и под капотом нашего проекта навели порядок.
Что такое микросервисы?
Микросервисы — это архитектурный стиль, при котором приложение разбивается на набор небольших, независимых друг отдруга сервисов, каждый из которых отвечает за отдельную бизнес-функцию, имеет свою логику и базу данных, взаимодействуя с другими через API, что обеспечивает гибкость, масштабируемость и отказоустойчивость, но требует управления сложной распределенной системой.
Какие микросервисы уже есть?
Первым делом мы вынесли самую мелочь, это получение магнитную активность нашего светила в отдельный сервис, и наш раздел https://qso.su/ru/sun уже работает на этом микросервисе и API методы версии 2.0 уже работают на нём getMagneticStormCurrent и getMagneticStormHistory.
Споты
Мы сделали микросервис, который может подключаться к нескольким спот-серверам и помогает нам ретранслировать данные в нашу систему через TLS сокет (который используется в QSO Logger) для реализации раздела споты и через WSS (WebSocket Secure) который уже применяется для реализации раздела спотов на сайте https://qso.su/ru/spot.
А что дальше? В QSO Logger уже есть фильтры, так же появится и на сайте, из QSO Logger v3.0 можно отправлять споты, но отправленные споты будут видеть только наши пользователи. Функционал для отправки спота на сервера есть, но пока он закрыт, нужно решить некоторые юридические и этические вопросы.
Callbook
Мы решили вынести наш Сallbook в отдельный сервис, для ускорения работы и снятия нагрузки на нашем основном сервере. Сейчас сервис в стадии тестирования, есть множество вопросов которые нужно решить. Задача звучит просто, есть позывной, есть множество Сallbook, проходим по всем, собираем, дополняем информацию и готово. Однако, не всё так просто, вопросы приоритетов данных, приоритеты сервисов в зависимости от страны позывного и так далее. По этому в 2026 году нас ждёт отличный Сallbook.
Очень хочется дать этот инструмент для всех, при этом сохранив актуальность данных и скорость работы.
Файлы
Ранее писали в журнале изменений https://qso.su/ru/changelog/25 как мы хорошо решили проблему с памятью и хранением файлов. Это было хороший прорыв, однако пошли дальше. Задача: Нужен единый вход и выход файлов, но хранилища должны быть распределены. Так родился микросервис по работе с файлами.
У нас есть два главных, внутренних метода API для загрузки файла и для получения файла. Загружая файл, система самостоятельно определяет хранилище, директории и имеет возможность архивировать файлы для экономии памяти. Так, мы избавились в проекте от сложной логики при работе с файлами, время на архивацию, время на отправку по FTP на сервера.
В скором времени на сайте будет обновлён раздел хранилище журналов, и будет создан API в версии 2.0, что бы дать возможность пользователям через QSO Logger загружать журналы adif.
Как этот микросервис будет использоваться ещё?
В планах — запуск новостного раздела с поддержкой загрузки изображений. Данный микросервис уже используется: это видно по тому, что в записях журнала изменений мы публикуем материалы с прикреплёнными изображениями.

Почта:
Да, почта это самая проблемная часть нашего проекта была в будущем, многие помнят тот этап жизни нашего рунета, когда письма просто не доходили на иностранные почтовые сервисы. Да, часть проблемы были в наших серверах, часть проблемы балы глобальная. Что бы минимизировать потерю писем, мы реализовали микросервис по отправке электронной почты, пока в стадии тестирования.