mirror of
https://github.com/ManyakRus/crud_generator.git
synced 2024-12-01 20:47:56 +02:00
.. | ||
api | ||
bin | ||
cmd | ||
configs_ | ||
internal/app | ||
pkg | ||
scripts | ||
.env_ | ||
.gitignore | ||
Makefile_ | ||
README.md_ | ||
readme.rus_ |
Сервис реализует синхронный обмен данными. Сервис для обмена данными с БД Postgres SQL Обмен данными сделано разными методами: 1. DB CRUD операции - прямой обмен с БД (в каждой модели таблицы есть методы Read(), Update(), Create(), Save(), Delete(), Restore()) 2. GRPC - обмен с БД по протоколу GRPC (сервис клиент которому надо обмениваться с БД подключается к сервису серверу sync_exchange, последний обменивается с БД) 3. NRPC - обмен с БД по протоколу NRPC (сервис клиент которому надо обмениваться с БД подключается к сервису NATS, который передаёт команды серверу sync_exchange, последний обменивается с БД) Перед началом выполнения CRUD операций, при прямом соединении с БД, надо указать транспорт по которому будет происходить обмен (не надо для GRPC, NRPC) с помощью команды: InitCrudTransport_DB() из модуля "gitlab.aescorp.ru/dsp_dev/claim/sync_service/pkg/crud_starter" Также для начала работы должны быть заполнены переменные окружения: (в файле .env) 1) для DB CRUD: DB_HOST= DB_NAME= DB_SCHEME= DB_PORT= DB_USER= DB_PASSWORD= 2) для GRPC: SYNC_SERVICE_HOST= SYNC_SERVICE_PORT= 3) для NRPC: BUS_LOCAL_HOST= BUS_LOCAL_PORT= Для NRPC (и GRPC) желательно сначала подключиться туда и в конце отключиться nrpc_client.Connect() defer nrpc_client.CloseConnection() иначе код всё равно туда подключится, и не отключится в конце работы микросервиса.