Skip to content

🌐 Microservice application for personal blogging

Notifications You must be signed in to change notification settings

shuryak/shuryak-blog

Repository files navigation

shuryak-blog

shuryak-blog — блог, написанный с применением микросервисной архитектуры, построенной на фреймворке go-micro.

Цели и задачи

Основная задача разработки блога — изучение мной микросервисной архитектуры.

Структура проекта

Для разработки проекта была выбрана Monorepo-структура, поскольку:

  • Я единолично занимаюсь проектом;
  • Для всех backend-сервисов используется один язык программирования — Go;
  • Учитывая вышеперечисленные моменты, становится проще разделять кодовую базу между сервисами.

Монорепозиторий в проекте реализуется следующим образом:

shuryak-blog/
├── cmd/
│   └── название_сервиса/
│       ├── main.go <- точка входа в сервис
│       └── plugins.go <- плагины go-micro
├── internal/
│   └── название_сервиса/
│       ├── app/
│       │   └── app.go <- основная функция для запуска сервиса
│       ├── config/
│       │   ├── config.go <- Go-структура конфигурации сервиса
│       │   └── config.yml <- YAML-конфигурация сервиса
│       ├── ... <- специфичные для сервиса пакеты
│       └── Dockerfile
├── pkg <- Межсервисные пакеты
├── proto/
│   └── название_сервиса/
│       └── *.proto
└── k8s <- YAML-манифесты Kubernetes

Основной код сервисов хранится в каталоге internal вместо services для большей совместимости с Standard Go Project Layout.

Полезные ссылки

About

🌐 Microservice application for personal blogging

Resources

Stars

Watchers

Forks