cyberway-core-service v3.59.3
CORE-SERVICE
CORE-SERVICE является набором корневых классов и утилит для микросервисов CyberWay.
Основные возможности:
Базовый класс виртуального сервиса, на основе которого строятся все микросервисы.
Каждый микросервис содержит в себе 1 или более виртуальных сервисов, работающих асинхронно и скомпанованных в древовидную структуру зависимостей.
Базовый класс предлагает общий интерфейс и некоторые утилитные методы для работы, подробнее в описании самого класса.Виртуальный сервис для подписки на блоки, генерируемые блокчейном CyberWay.
Виртуальный сервис восстановления пропущенный блоков на случай если микросервис был перезапущен или произошло что-либо иное подобное.
Виртуальный сервис работы с базой данных MongoDB, используя Mongoose.
Виртуальный сервис связи микросервисов, позволяющий осуществлять двухстороннюю связь между микросервисами через HTTP, используя JSON-RPC, добавляя к этому возможность множественного ответа на единичный запрос JSON-RPC (например для подписки на что-либо).
Утилиты и обертки для работы со временем, логами и переменными окружения.
StatsD мониторинг.
Набор ENV, которые можно определять для корневых классов:
GLS_CONNECTOR_HOST- адрес, который будет использован для входящих подключений связи микросервисов.
Дефолтное значение -127.0.0.1GLS_CONNECTOR_PORT- адрес порта, который будет использован для входящих подключений связи микросервисов.
Дефолтное значение -3000GLS_METRICS_HOST- адрес хоста для метрик StatsD.
Дефолтное значение -127.0.0.1GLS_METRICS_PORT- адрес порта для метрик StatsD.
Дефолтное значение -8125GLS_MONGO_CONNECT- строка подключения к базе MongoDB.
Дефолтное значение -mongodb://mongo/adminGLS_DAY_START- время начала нового дня в часах относительно UTC, используется для таких вещей как валидация "1 пост в сутки".
Дефолтное значение -3(день начинается в 00:00 по Москве).GLS_CYBERWAY_CONNECT- строка подключения к блокчейну CyberWay как клиент.GLS_BLOCKCHAIN_BROADCASTER_SERVER_NAME- имя сервера рассыльщика блоков.GLS_BLOCKCHAIN_BROADCASTER_CLIENT_NAME- имя клиента для подключения к рассыльщику блоков.GLS_BLOCKCHAIN_BROADCASTER_CONNECT- строка подключения к рассыльщику блоков, может содержать авторизацию.GLS_BLOCK_SUBSCRIBER_REPLAY_TIME_DELTA- дельта времени для реплея блоков при запуске, необходимо для восстановления пропущенных блоков.
Дефолтное значение -600000(10 минут)GLS_BLOCK_SUBSCRIBER_CLEANER_INTERVAL- интервал запуска систем очистки подписчика блоков.
Дефолтное значение -600000(10 минут)GLS_BLOCK_SUBSCRIBER_LAST_BLOCK_STORE- количество сохраняемых блоков из прошлого для подписчика на блоки.
Дефолтное значение -1000GLS_SYSTEM_METRICS- включает логирование системных показателей системы для Prometheus.
Дефолтное значение -falseGLS_EXTERNAL_CALLS_METRICS- включает метрики по исходящим запросами сервиса. Изначально собираются только метрики по входящим запросам.
Дефолтное значение -falseGLS_USE_ONLY_RECENT_BLOCKS- режим при котором подписчик блоков не пытается скачать все пропущенные с последнего запуска блоки, а берет всегда текущие.
(Применяется для разработки, чтобы не ждать все пропущенные блоки)
Дефолтное значение -falseGLS_RECENT_BLOCKS_TIME_DELTA- параметр для найстройки режимаGLS_USE_ONLY_RECENT_BLOCKS, выставляет на сколько времени в прошлое надо брать блоки.
Дефолтное значение -300000(5 минут)GLS_LOCAL_METRICS- переключает метрики с Prometheus на локальные, имеет два варианта значения: log и file, при log метрики будут выводиться каждые 30 секунд в консоль, при file будет писаться файл stats.txt в корень проекта каждый 2 секунды.
Дефолтное значение -falseGLS_PRESERVE_LOCAL_METRICS- сохранять метрики прошлога запуска в файл stats-\${TIMESTAMP}.txt
Дефолтное значение -falseGLS_WAIT_FOR_TRANSACTION_TIMEOUT- таймаут ожидания транзакции при формировании блока (ms) Дефолтное значение -300000(5 минут)GLS_SAVE_GENESIS_EXAMPLES- сохранять по одному примеру каждого вида genesis события в текущую папку.
Дефолтное значение -falseGLS_NATS_MAX_IN_FLIGHT- выставляет значение MaxInFlight для коннектора nats.
Дефолтное значение -10GLS_SKIP_MISSING_TRANSACTIONS- если нет транзакции в фиде просто логирует ошибку и продолжаем работу. Дефолтное значение -falseGLS_DB_LOGS_ENABLED- включает запись логов в базу данных. Дефолтное значение:false
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago