Co-Authored-By: Claude Sonnet 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_017ic4b7rnC7jppGGdHGESvy
67 lines
2.2 KiB
XML
67 lines
2.2 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<parent>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
<version>4.1.2</version>
|
|
<relativePath/>
|
|
</parent>
|
|
|
|
<groupId>com.ankurm</groupId>
|
|
<artifactId>rate-limit</artifactId>
|
|
<version>1.0.0</version>
|
|
<name>rate-limit</name>
|
|
<description>Rate limiting Spring Boot 4.1 APIs with Bucket4j 8.21 and Redis: per-user, per-API-key and global limits, 429 with Retry-After, two instances sharing one bucket</description>
|
|
|
|
<properties>
|
|
<java.version>25</java.version>
|
|
<bucket4j.version>8.21.0</bucket4j.version>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-webmvc</artifactId>
|
|
</dependency>
|
|
<!-- Brings Lettuce (io.lettuce:lettuce-core). -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-data-redis</artifactId>
|
|
</dependency>
|
|
<!-- The Bucket4j artifacts carry the JDK level in the artifactId: bucket4j_jdk17-*. -->
|
|
<dependency>
|
|
<groupId>com.bucket4j</groupId>
|
|
<artifactId>bucket4j_jdk17-core</artifactId>
|
|
<version>${bucket4j.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.bucket4j</groupId>
|
|
<artifactId>bucket4j_jdk17-lettuce</artifactId>
|
|
<version>${bucket4j.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-webmvc-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project>
|