Golang простейшая структура папок для Microservice

Простая, но эффективная организация папок для микросервисов Golang.

cmd: Содержит основные файлы ввода для ваших микросервисов. Здесь у каждого микросервиса должен быть свой собственный подкаталог, например, cmd/service1, cmd/service2 и т.д. Каждый подкаталог может содержать файл main.go, который инициализирует соответствующий микросервис.

pkg: Здесь вы размещаете код, который используется совместно различными микросервисами или обычно используется в рамках всего проекта. Этот пакет может содержать утилиты, вспомогательные функции, общие типы данных и так далее.

internal: Эта папка похожа на pkg, но ее содержимое относится только к вашему проекту и не импортируется другими внешними модулями. Вы можете поместить сюда код, относящийся к внутренней реализации ваших микросервисов.

api: Ваши службы предоставляют API для взаимодействия с другими службами или клиентами. У вас может быть папка api, содержащая определения API, такие как файлы protobuf для gRPC или файлы OpenAPI для RESTful API.

config: Здесь вы можете разместить файлы конфигурации для ваших микросервисов. Это могут быть файлы YAML, JSON-файлы или даже файлы окружения.

scripts: Если у вас есть вспомогательные скрипты для создания, тестирования или развертывания ваших сервисов, вы можете разместить их здесь.

docs: Эта папка может содержать документацию по вашему проекту, такую как спецификации API, руководства по установке, примеры использования и т.д.

test: Здесь вы размещаете свои тесты. Вы можете придерживаться соглашения о размещении модульных тестов и интеграционных тестов в отдельных подкаталогах.

Более подробную информацию по структуре папок Golang, смотрим: https://github.com/golang-standards/project-layout/blob/master/README_ru.md

Интересная статья о структуре с Хабр: https://habr.com/ru/companies/inDrive/articles/690088/

#golang #folders #structure
Golang простейшая структура папок для Microservice | Сетка — новая социальная сеть от hh.ru
repost

220

input message

напишите коммент

еще контент в этом сообществе

еще контент в этом соообществе

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь