KirillBuiko / luna-core

Core component of LuNA system

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Компонент "Ядро"

Компонент отвечает за маршрутизацию и доставку сообщений от одних компонентов/клиентов к другим. Написан на TypeScript, Node.Js.

Где и как развёрнут

Развёрнут на общем сервере через docker-compose (файл docker-compose.yaml), порты 5051 для REST, 5052 для GRPC

Где конфигурация

Конфигурация хостов всех компонентов указана в docker-compose, core -> environment. Порты серверов ядра указаны в .env. Обработчики компонентов прописываются в файлах проекта, src/endpoints/index.ts (для информации, менять их никто не сможет)

Как поднять

Поднять/остановить все описанные в docker-compose образы:
$ sudo docker compose up -d --build (если нужен вывод, убрать -d)
$ sudo docker compose down

Чтобы поднять локально, скопируйте файлы docker-compose.yaml и .env с сервера и выполните команды выше.

Как делать запросы

Из-за специфики ядра как таковых тестовых запросов нет, потому что для проверки запросов нужно минимум два узла - отправляющий и принимающий. Поэтому проверить можно только "пустые" запросы, которые вернут ошибку о невозможности подключения к конечной точке (конечно, пока не будет к ней доступа)

Интерфейс запросов

  • API v1 (базовый устаревший интерфейс, работает, но не описывается)
  • API v2 (актуальный интерфейс)

About

Core component of LuNA system


Languages

Language:TypeScript 91.4%Language:C++ 7.1%Language:JavaScript 0.6%Language:Shell 0.4%Language:PowerShell 0.3%Language:Python 0.2%Language:Dockerfile 0.1%