# README
Набор компонент для языка Golang Автор: Александр Никитин
Набор компонент для языка golang сделан для облегчения работы программиста, чтобы любой компонент можно было подключить одной строкой кода.
Компоненты для запуска любых микросерверов (ядро):
- log - компонент для логирования информации в консоль (логгер logrus)
- contextmain - контекст общий на всё приложение
- stopapp - ожидание завершения работы приложения Gracefull shutdown (CTRL+C), WaitGroup
- config - загрузка параметров из файла .env или из переменных окружения
Подключение к внешним сервисам:
- camunda_connect - подключение с сервису camunda
- chatgpt_connect - подключение к сервису ChatGPT OpenAI, искуственный интеллект
- fiber_connect - подключение веб сервера с компонентой fiber
- kafka_connect - подключение к брокеру сообщений kafka
- liveness - создание примитивного веб сервера для проверки работает или нет микросервис
- mssql_connect - подключение к серверу Microsoft SQL server с драйвером sqlx
- mssql_gorm - подключение к серверу Microsoft SQL server с драйвером gorm
- nats_connect - подключение к брокеру сообщений NATS
- postgres_connect - подключение с серверу баз данных Postgres, с драйвером sqlx
- postgres_gorm - подключение с серверу баз данных Postgres, с драйвером gorm
- postgres_pgx - подключение с серверу баз данных Postgres, с драйвером pgx
- whatsapp_connect - подключение к сервисам мессенджера whatsapp
Каждое подключение к внешним сервисам использует общий logger, contextmain, WaitGroup, config, и свою структуру Settings с параметрами
А также дополнительные библиотеки:
- micro - набор небольших полезных функций
- ping - функция для проверки работы порта на нужном хосте
Пример минимального ядра:
func main() {
config.LoadEnv()
stopapp.StartWaitStop()
//ваш код
stopapp.GetWaitGroup_Main().Wait()
}
Пример с разными подключениями:
func main() {
config.LoadEnv()
contextmain.GetContext()
stopapp.StartWaitStop()
mssql_gorm.StartDB()
postgres_gorm.StartDB()
nats.StartNats()
camunda.StartCamunda()
liveness.Start()
stopapp.GetWaitGroup_Main().Wait()
log.Info("App stopped")
}
# Packages
No description provided by the author
модуль для использования сервиса CAMUNDA.
No description provided by the author
No description provided by the author
No description provided by the author
модуль для хранения постоянных переменных, констант.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
дублирует все функции логгера logrus.
дублирует все функции логгера logrus.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
модуль для обмена с сервисом NATS через sync_exchange.
модуль для использования Телеграмм Клиента (или бота).
No description provided by the author