https://github.com/mattakvshi/test-task-for-stecpoint
Тестовое задание от Stecpoint. Цель: проверить навыки написания алгоритмов и навык владения Java SDK и библиотеками Spring, Spring Boot.
https://github.com/mattakvshi/test-task-for-stecpoint
java-8 spring spring-boot spring-web
Last synced: 3 months ago
JSON representation
Тестовое задание от Stecpoint. Цель: проверить навыки написания алгоритмов и навык владения Java SDK и библиотеками Spring, Spring Boot.
- Host: GitHub
- URL: https://github.com/mattakvshi/test-task-for-stecpoint
- Owner: mattakvshi
- Created: 2024-08-20T16:25:20.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-08-20T19:53:45.000Z (almost 2 years ago)
- Last Synced: 2024-11-19T10:57:08.838Z (over 1 year ago)
- Topics: java-8, spring, spring-boot, spring-web
- Language: Java
- Homepage:
- Size: 15.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Тестовое задание от Stecpoint
### Цель
Проверить навыки написания алгоритмов и навык владения Java SDK и библиотеками Spring, Spring Boot
### Описание
1. Написать spring-boot приложение, которое будет содержать 1 контроллер с одним методом, который возвращает HTTP 200 и пустую строку.
2. Написать функционал, который будет ограничивать количество запросов с одного ІР адреса на этот метод в размере 50 штук в минуту. Если количество запросов больше, то должен возвращаться 502 код ошибки, до тех пор, пока количество обращений за последнюю минуту не станет ниже 50.
3. Сделать так, чтобы это ограничение можно было применять быстро к новым методам и не только к контроллерам, а также к методам классов сервисного слоя. 4. Реализация должна учитывать многопоточную высоконагруженную среду исполнения и потреблять как можно меньше ресурсов.
5. Проект должен собираться при помощи maven командой mvn clean package и запускаться командой java -jar test-1.jar. Порт приложения должен быть 8080.
6. Использовать Java 8 & maven 3.
7. Не использовать сторонних библиотек для троттлинга.