1
0
mirror of https://github.com/ManyakRus/starter.git synced 2025-02-11 14:50:55 +02:00
2025-02-07 14:55:38 +03:00
2024-12-06 11:38:40 +03:00
2024-09-30 12:05:31 +03:00
2024-09-30 12:05:31 +03:00
2024-09-30 12:05:31 +03:00
2024-09-30 12:05:31 +03:00
2024-09-30 12:05:31 +03:00
2024-10-14 13:14:37 +03:00
2023-09-13 13:48:19 +03:00
2025-01-29 16:58:12 +03:00
2024-12-09 17:09:46 +03:00
2024-09-30 12:05:31 +03:00
2024-09-30 12:05:31 +03:00
2024-09-30 12:05:31 +03:00
2024-12-06 11:25:59 +03:00
2024-09-30 12:05:31 +03:00
2024-09-30 12:05:31 +03:00
2025-01-27 12:00:12 +03:00
2023-12-26 16:42:53 +03:00
2025-01-27 12:00:12 +03:00
2025-01-27 12:00:12 +03:00
2025-01-27 12:00:12 +03:00
2024-09-30 12:05:31 +03:00
2025-01-16 14:28:59 +03:00
2024-12-06 11:38:40 +03:00
2024-09-30 12:05:31 +03:00
2024-12-17 16:10:48 +03:00
2024-06-24 17:11:55 +03:00
2024-09-26 14:49:25 +03:00
2024-12-06 11:38:40 +03:00
2024-12-06 11:38:40 +03:00
2024-03-19 15:59:48 +03:00
2024-11-21 10:20:21 +03:00
2024-03-15 11:44:47 +03:00

Набор компонент для языка Golang Автор: Александр Никитин

Набор компонент для языка golang сделан для облегчения работы программиста, чтобы любой компонент можно было подключить одной строкой кода.

Компоненты для запуска любых микросерверов (ядро):

  1. log - компонент для логирования информации в консоль (логгер logrus)
  2. contextmain - контекст общий на всё приложение
  3. stopapp - ожидание завершения работы приложения Gracefull shutdown (CTRL+C), WaitGroup
  4. config - загрузка параметров из файла .env или из переменных окружения

Подключение к внешним сервисам:

  1. camunda_connect - подключение с сервису camunda
  2. chatgpt_connect - подключение к сервису ChatGPT OpenAI, искуственный интеллект
  3. fiber_connect - подключение веб сервера с компонентой fiber
  4. kafka_connect - подключение к брокеру сообщений kafka
  5. liveness - создание примитивного веб сервера для проверки работает или нет микросервис
  6. mssql_connect - подключение к серверу Microsoft SQL server с драйвером sqlx
  7. mssql_gorm - подключение к серверу Microsoft SQL server с драйвером gorm
  8. nats_connect - подключение к брокеру сообщений NATS
  9. postgres_connect - подключение с серверу баз данных Postgres, с драйвером sqlx
  10. postgres_gorm - подключение с серверу баз данных Postgres, с драйвером gorm
  11. postgres_pgx - подключение с серверу баз данных Postgres, с драйвером pgx
  12. whatsapp_connect - подключение к сервисам мессенджера whatsapp

Каждое подключение к внешним сервисам использует общий logger, contextmain, WaitGroup, config, и свою структуру Settings с параметрами

А также дополнительные библиотеки:

  1. micro - набор небольших полезных функций
  2. 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")
}
Languages
Go 99.6%
Makefile 0.3%