Middle — Senior
67
Внедрение модуля сбора аналитики
Task condition
Сервис обрабатывает поток GET‑запросов через API Gateway → TinyUrl GET → Cache/DB. Необходимо расширить архитектуру компонентой, отвечающей за сбор аналитики. Требуется реализовать фиксирование данных о переходах по ссылке:
- Что фиксировать: short_link, timestamp, IP, user‑agent, referer и прочее.
- Куда направлять события: в отдельный поток, базу данных или логгер.
- Как гарантировать, что сбор аналитики не будет тормозить основной GET‑поток.
- Какие инструменты применять: очередь (Kafka/PubSub), асинхронный воркер, батч‑обработку.
- Как построить хранение и агрегацию аналитических данных (например, ClickHouse).