This is a web server protector. It will block multiple HTTP Client's requests if there were 5 previous requests in the last 5 seconds. Design and implemented as thread safe, concurrent enabled web service.
- Spring Boot.
- Guava Cache.
- Logback.
- Hamcrest-junit.
All you need is JRE to run DdosProtector.JAR ! You don't need any servlet containers, since Spring Boot Web App bundles in one.
Steps:
- Clone this project to your server.
- Open cmd, navigate to the project folder.
- Run: mvn clean install
- Wait till Maven completes the build.
- Run the DdosProtector web App by typing: java -jar target/<jar_name>.jar
After deploying DdosProtector web service available for all HTTP methods on -
http://localhost:8080/?clientID=
Design.(Done - Pushed)Project skeleton.(Done - Pushed)Add blank Packages for Controller, Service, Repository (redundant- no DB, only in-memory), Model.(Done - Pushed)Implement REST Controller responses.(Done - Pushed)Implement Unit for REST Controller responses.(Done - Pushed)Implement service (non-thread safe).(Done - Pushed)Implement thread safe version of service by using Guava Cache.(Done - Pushed)Basic Unit Test.(Done - Pushed)Basic Integration Tests.(Done - Pushed)