Pastebin
Pastebin - это веб-приложение, где каждый может хранить куски текста онлайн и делиться короткими ссылками на них.
Основные фичи
- Приложение может хранить текстовые куски объемом до 10 мегабайт.
- После сохранения будет сгенерирован короткий URL-адрес для вставки.
- По истечении срока действия текст будет автоматически удален из системы.
Веб-интерфейс Pastebin
Реализация
Для неавторизованных пользователей максимальный размер текста - 512 килобайт. Этого должно быть достаточно практически для любого текста или скрипта, и это предотвращает перегрузку внутренних серверов. Авторизованные же пользователи могут добавлять, редактировать и удалять вставленный текст размером до 10 мегабайт. Куски текста с истекшим сроком действия будут удалены без возможности восстановления.
Диаграмма архитектуры Pastebin
Системные требования
Применение
Выполнить сборку проекта через Docker Compose.
make
Запустить собранный проект через Docker Compose.
make run
Собрать локально backend-сервисы (создание исполняемых файлов).
make build-local
Запустить локально собранные backend-сервисы (запуск исполняемых файлов).
make run-local
Сборка и запуск backend-сервисов во временных файлах (быстро).
make run-fast
Тестирование
Запустить все unit-тесты.
make test
Собрать контейнер PostgreSQL в Docker.
make build-postgres-container
Собрать контейнер MongoDB в Docker.
make build-mongo-container
Запустить контейнер PostgreSQL в Docker.
make run-postgres-container
Запустить контейнер MongoDB в Docker.
make run-mongo-container