diff --git a/pom.xml b/pom.xml
index a464ccb..0ced8b3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -64,6 +64,7 @@
spring-boot-demo-graylog
spring-boot-demo-ldap
spring-boot-demo-dynamic-datasource
+ spring-boot-demo-ratelimit-guava
pom
diff --git a/spring-boot-demo-ratelimit-guava/.gitignore b/spring-boot-demo-ratelimit-guava/.gitignore
new file mode 100644
index 0000000..a2a3040
--- /dev/null
+++ b/spring-boot-demo-ratelimit-guava/.gitignore
@@ -0,0 +1,31 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**
+!**/src/test/**
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+
+### VS Code ###
+.vscode/
diff --git a/spring-boot-demo-ratelimit-guava/pom.xml b/spring-boot-demo-ratelimit-guava/pom.xml
new file mode 100644
index 0000000..78443de
--- /dev/null
+++ b/spring-boot-demo-ratelimit-guava/pom.xml
@@ -0,0 +1,48 @@
+
+
+ 4.0.0
+
+ spring-boot-demo-ratelimit-guava
+ 1.0.0-SNAPSHOT
+ jar
+
+ spring-boot-demo-ratelimit-guava
+ Demo project for Spring Boot
+
+
+ com.xkcoding
+ spring-boot-demo
+ 1.0.0-SNAPSHOT
+
+
+
+ UTF-8
+ UTF-8
+ 1.8
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+
+ spring-boot-demo-ratelimit-guava
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+
+
diff --git a/spring-boot-demo-ratelimit-guava/src/main/java/com/xkcoding/ratelimit/guava/SpringBootDemoRatelimitGuavaApplication.java b/spring-boot-demo-ratelimit-guava/src/main/java/com/xkcoding/ratelimit/guava/SpringBootDemoRatelimitGuavaApplication.java
new file mode 100644
index 0000000..a4fb96d
--- /dev/null
+++ b/spring-boot-demo-ratelimit-guava/src/main/java/com/xkcoding/ratelimit/guava/SpringBootDemoRatelimitGuavaApplication.java
@@ -0,0 +1,13 @@
+package com.xkcoding.ratelimit.guava;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication
+public class SpringBootDemoRatelimitGuavaApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(SpringBootDemoRatelimitGuavaApplication.class, args);
+ }
+
+}
diff --git a/spring-boot-demo-ratelimit-guava/src/main/resources/application.properties b/spring-boot-demo-ratelimit-guava/src/main/resources/application.properties
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/spring-boot-demo-ratelimit-guava/src/main/resources/application.properties
@@ -0,0 +1 @@
+
diff --git a/spring-boot-demo-ratelimit-guava/src/test/java/com/xkcoding/ratelimit/guava/SpringBootDemoRatelimitGuavaApplicationTests.java b/spring-boot-demo-ratelimit-guava/src/test/java/com/xkcoding/ratelimit/guava/SpringBootDemoRatelimitGuavaApplicationTests.java
new file mode 100644
index 0000000..7f20128
--- /dev/null
+++ b/spring-boot-demo-ratelimit-guava/src/test/java/com/xkcoding/ratelimit/guava/SpringBootDemoRatelimitGuavaApplicationTests.java
@@ -0,0 +1,16 @@
+package com.xkcoding.ratelimit.guava;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+@RunWith(SpringRunner.class)
+@SpringBootTest
+public class SpringBootDemoRatelimitGuavaApplicationTests {
+
+ @Test
+ public void contextLoads() {
+ }
+
+}