Sentinel/sentinel-demo/sentinel-demo-quarkus
Robert Lu cd02b1dc8d
fix flaky tests and fix passDefaultLocalCheck (#3367)
* fix test case SentinelDubboConsumerFilterTest#testDegradeSync

* When test is run slow, count bucket will count on next time span, causing failed test.

* dos2unix ParamFlowDefaultCheckerTest.java

* fix testParamFlowDefaultCheckSingleValueCheckQpsMultipleThreads by rule.setDurationInSec(2)

* set threshold as count in 2 seconds to prevent the failure of the unit test when the unit test runs longer than 1 second.

* fix quarkus test by set /txt sleep 300

* If /txt sleep 500 ms, in testSentinelJaxRsQuarkusAdapter, may cause 2 request intervals of more than 1 s, which cause rate limit policy is not effective.

* fix testDegradeAsync

* When test is run slow, count bucket will count on next time span, causing failed test.

* use testcontainers to fix testConsulDataSourceWhenInit

* Project embedded-consul has been deprecated in favour of org.testcontainers:consul
* use consul testcontainers to fix testConsulDataSourceWhenInit, which means docker is required to run tests.
```
Error:  com.alibaba.csp.sentinel.datasource.consul.ConsulDataSourceTest.testConsulDataSourceWhenInit -- Time elapsed: 34.47 s <<< ERROR!
  com.pszymczyk.consul.EmbeddedConsulException: Could not start Consul process in 30 seconds
  	at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
  	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)
  	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)
  	at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:72)
 ```

* introduce intermediate node to avoid ABA problem
2024-04-17 10:25:25 +08:00
..
.mvn/wrapper Add annotation CDI demo and Quarkus adapter demo (#1543) 2020-06-16 12:01:52 +08:00
src fix flaky tests and fix passDefaultLocalCheck (#3367) 2024-04-17 10:25:25 +08:00
.dockerignore Add annotation CDI demo and Quarkus adapter demo (#1543) 2020-06-16 12:01:52 +08:00
.gitignore Add annotation CDI demo and Quarkus adapter demo (#1543) 2020-06-16 12:01:52 +08:00
README.md Move document-lint from circleci to github-actions (#3345) 2024-02-21 17:05:29 +08:00
build-native.sh Add annotation CDI demo and Quarkus adapter demo (#1543) 2020-06-16 12:01:52 +08:00
build.sh Add annotation CDI demo and Quarkus adapter demo (#1543) 2020-06-16 12:01:52 +08:00
mvnw Add annotation CDI demo and Quarkus adapter demo (#1543) 2020-06-16 12:01:52 +08:00
mvnw.cmd Add annotation CDI demo and Quarkus adapter demo (#1543) 2020-06-16 12:01:52 +08:00
pom.xml Bump version to 1.8.7 2023-12-28 19:32:10 +08:00

README.md

sentinel-demo-quarkus project

This project uses Quarkus, the Supersonic Subatomic Java Framework.

If you want to learn more about Quarkus, please visit its website: quarkus.io

Running the application in dev mode

You can run your application in dev mode that enables live coding using:

./mvnw quarkus:dev

Packaging and running the application

The application can be packaged using ./mvnw package. It produces the sentinel-demo-quarkus-1.0-SNAPSHOT-runner.jar file in the /target directory. Be aware that its not an über-jar as the dependencies are copied into the target/lib directory.

The application is now runnable using java -jar target/sentinel-demo-quarkus-1.0-SNAPSHOT-runner.jar.

Creating a native executable

You can create a native executable using: ./mvnw package -Pnative.

Or, if you don't have GraalVM installed, you can run the native executable build in a container using: ./mvnw package -Pnative -Dquarkus.native.container-build=true.

You can then execute your native executable with: ./target/sentinel-demo-quarkus-1.0-SNAPSHOT-runner

If you want to learn more about building native executables, please consult building-native-image