Сервис для сокращения URL-адресов с возможностью кэширования часто используемых ссылок.
- Java 17
- Spring Boot 3.4.3 (Data, Web, JPA, Hibernate)
- Мониторинг: ELK
- NoSQL: Redis
- SQL: PostgreSQL
- Контейнеризация: Docker/Docker Compose
- Документация: Swagger
- Миграции: Liquibase
- Тестирование: JUnit/Mockito/TestContainers
- Создание коротких URL
- Перенаправление по короткому URL на оригинальный адрес
- Кэширование часто используемых URL
- REST API с документацией Swagger
- Веб-интерфейс для создания и мониторинга сокращенных ссылок
- JDK 17
- Node.js 16+
- Docker и Docker Compose
- для Windows
.\build-and-run.ps1- для Linux/MacOS
.\build-and-run.sh- Клонируйте репозиторий:
git clone https://github.com/therealadik/url_shortener_service.git
cd url_shortener_service- Соберите backend:
./gradlew clean build -x test- Соберите frontend:
cd frontend
npm install
cd ..- Запустите все сервисы через Docker Compose:
docker-compose up -dПосле запуска всех компонентов:
- Веб-интерфейс: http://localhost
- Swagger UI: http://localhost:8080/swagger-ui.html
Этот проект является открытым исходным кодом и распространяется под лицензией MIT. Вы можете свободно использовать, изменять и распространять код проекта в соответствии с условиями лицензии MIT.