Project

General

Profile

Actions

Описание микросервисов и работы системы

Список основных задействованых микросервисов

API микросервисы

1. Основной API Fluir: https://api.fluir.us/docs.html

Включает в себя разделы:

  • Articles - работает
  • Authentication - работает
  • Admin - работает
  • Profile - работает
  • Services - (Internal service auth using service id and secret) требует проверки, возможно доработки
  • Supports - требует проверки, возможно доработки
  • Delivery - требует проверки, возможно доработки
  • Orders - работает
  • Tariffs - работает
  • Location - работает
  • Chats - работает
  • Images - работает
  • Taxi - работает
  • Requests - работает (относится к ордерам)
  • Other - требует проверки, возможно доработки (относится к ордерам)
  • Places - требует проверки, возможно доработки
  • Reviews - работает
  • Tickets - работает
  • Users - работает
  • Roles - работает
  • Status - работает

2. KYC API Fluir https://kyc.fluir.us/docs.html

Включает в себя разделы:

  • Applicants - работает
  • Vehicles - работает
  • Callbacks - работает
  • KYC (Get verification URLs for applicant) - работает

3. Payments API Fluir https://payments.fluir.us/docs.html

Включает в себя разделы:

  • Accounts - работает
  • Customers - работает
  • Onboarding - работает
  • Verification - работает
  • Balances - работает
  • PaymentMethods - работает
  • SetupIntents - работает
  • Payments - работает
  • PaymentIntents - работает
  • Payouts - работает
  • Refunds - работает
  • Transactions - работает
  • Webview - работает

5. Contents API Fluir https://contents.fluir.us/docs.html

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

Включает в себя разделы:

  • Articles - некоторые эндпойнты требуют исправления
  • FAQ - не проверены.
  • PhoneSupport - не проверены.
  • Tickets - не проверены.

6. Notification API Fluir https://notifications.fluir.us/docs.html

Включает в себя разделы:

  • Categories - работает
  • Notifications - работает
  • Subscriptions - работает
  • PushTokens - работает

Список дополнительных микросервисов

Дополнительные микросервисы разрабатывались для того, чтобы "разгрузить" основной сервис.
Но в данный момент они имплементированы в сервис основной сервис "api".
В перспективе они должны работать самостоятельно и реализовывать соответсвующую функциональность.

1. Orders API Fluir https://orders.fluir.us/docs.html

2. Profiles API Fluir https://profiles.fluir.us/docs.html

3. Profiles API Fluir https://chats.fluir.us/docs.html


Веб микросервисы

1. Админ панель системы https://admin.fluir.us/ (Доступы по запросу)

2. Redmine https://admin.fluir.us/ Пока используем только для Wiki документации

3. Вебвью https://webview.fluir.us/ Предполагался для различных вебью, пока не используется.

4. Мониторинг сети и докер контенйеров https://traefik.fluir.us/dashboard/ (Доступы по запросу)


Краткое описание инфраструктуры

Краткое описание сервисов

Проект находится в папке "/home/fluir/project"

Система собрана через docker + swarm. От kubernetes было принято решение отказаться, ввиду его долгой настройки.
В дальнейшем возможен переход на Kubernetes.
Но внимание: нужно учесть, что часть кода обращается к другим микросервисам через внутреннюю сеть docker "fluir_payments_nginx" http://fluir_payments_nginx/api/payments/internal/

В каждой папке микросервиса есть файл для запуска либо в локальной, либо в прод. среде. Например "api-stack.prod.yaml".
Внутри главного "api-stack.prod.yaml" сразу же интегрирован Traefik. Т.е. для корректной работы остальных сервисов, главный должен быть обязательно запущен.

Для быстрого запуска и останова сервисов, в корне проекта есть "start_services.sh" и "stop_services.sh"


Бэкапы

  1. Скрипты запуска бэкапов располагаются в папке /opt/scripts
  • api_backup.sh
  • kyc_backup.sh
  • notifications_backup.sh
  • orders_backup.sh
  • payments_backup.sh
  • telescope_prune.sh
  1. Конфиги и БД сохраняются в папку /opt/backups/

  2. Список задач cron

sudo crontab -l

0 2 * * * /opt/scripts/telescope_prune.sh >> /opt/backups/telescope_prune.log 2>&1
15 3 * * * /opt/scripts/api_backup.sh >> /opt/backups/api/backup.log 2>&1
30 3 * * * /opt/scripts/kyc_backup.sh >> /opt/backups/kyc/backup.log 2>&1
45 3 * * * /opt/scripts/notifications_backup.sh >> /opt/backups/notifications/backup.log 2>&1
0 4 * * * /opt/scripts/orders_backup.sh >> /opt/backups/orders/backup.log 2>&1
15 4 * * * /opt/scripts/payments_backup.sh >> /opt/backups/payments/backup.log 2>&1

Updated by Dmitry Vasilev 2 months ago · 5 revisions