Перейти к содержанию

Sprint 5 — Reddit Clone

Второй финальный pet-проект: Reddit-подобная платформа из 4 микросервисов. Дополняет Currency Service темами, которых там не было: JWT, древовидные комментарии, hot-feed алгоритм, опционально WebSocket.

Что строим

graph LR
    Client --> GW[gateway-service]
    GW --> AUTH[auth-service]
    GW --> POSTS[posts-service]
    GW --> FEED[feed-service]
    AUTH --> AUTHDB[(Postgres)]
    POSTS --> POSTSDB[(Postgres + ltree)]
    POSTS --> R[(Redis)]
    FEED --> R
    FEED --> POSTSDB

Сервисы

Сервис Что делает Стек
auth регистрация, логин, JWT, refresh Go, Postgres, JWT
posts посты, комментарии (ltree) Go, Postgres + ltree
feed hot-feed, кэш Go, Redis
gateway единая точка входа, проверка JWT Go, chi

Ключевые темы

Финальная задача

Один репозиторий monorepo с 4 сервисами + общий docker-compose. Полный walkthrough.

Эталон

materials/projects/golang-course/6/99_hw/redditclone/ — эталонная реализация для сравнения.