# Архитектура аналога Perplexity.ai **Отдельный проект.** Документы самодостаточны; все спеки и roadmap — внутри этой папки. ## СОА (сервисная архитектура) Используется **СОА**, а не микросервисная архитектура: доменные сервисы (chat, search, finance и т.д.), единая точка входа (api-gateway), стандартизированные REST API. Сервисы — бизнес-компоненты, а не атомарные микросервисы. Целевая система для ~10 000 DAU с **полным совпадением** логики Perplexity.ai: - **СОА (сервисная архитектура).** Папка `apps/` удаляется. Никаких app — только сервисы. - Сервисы в K3s (chat, search, discover, finance, travel, auth, library, memory, create, notifications, projects, cache-worker, web/frontend) - Максимум логики на клиенте; персональные данные только для аккаунтов - Предварительная обработка и кэширование (discover, finance, travel+inspiration, поиск) ## Документы | Документ | Описание | |----------|----------| | [01-perplexity-analogue-design.md](./01-perplexity-analogue-design.md) | Карта функциональностей, сервисы СОА, стратегия кэша, порядок реализации | | [02-k3s-services-spec.md](./02-k3s-services-spec.md) | K3s манифесты, Deployment, Service, CronJob для каждого сервиса | | [03-cache-and-precompute-strategy.md](./03-cache-and-precompute-strategy.md) | Детальная стратегия кэширования: discover, finance, travel, search | | [04-pages-logic-verification.md](./04-pages-logic-verification.md) | Сверка логики страниц с Perplexity.ai — полное совпадение | | [05-gaps-and-best-practices.md](./05-gaps-and-best-practices.md) | Production checklist, требования инфраструктуры | | [06-roadmap-specification.md](./06-roadmap-specification.md) | Roadmap и спецификация фич (Memory, Create, Notifications и др.) | ## Быстрый старт 1. Прочитать `01-perplexity-analogue-design.md` для общего понимания 2. Использовать `02-k3s-services-spec.md` для развёртывания 3. Реализовать `cache-worker` и Redis по `03-cache-and-precompute-strategy.md` ## Отношение к functional-inventory **docs/functional-inventory** — описание **текущего** кода (инвентаризация). Используется только для справки при миграции. Правки в architecture **не требуют** правок в functional-inventory.