diff --git a/frameworks/Clojure/aleph/aleph.dockerfile b/frameworks/Clojure/aleph/aleph.dockerfile
index 7f5e9642a2c..25f19f6bf0d 100644
--- a/frameworks/Clojure/aleph/aleph.dockerfile
+++ b/frameworks/Clojure/aleph/aleph.dockerfile
@@ -11,4 +11,4 @@ COPY --from=lein /aleph/target/hello-aleph-standalone.jar app.jar
EXPOSE 8080
-CMD ["java", "-server", "--enable-native-access=ALL-UNNAMED", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "--enable-native-access=ALL-UNNAMED", "-XX:+UseParallelGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true","-jar", "app.jar"]
diff --git a/frameworks/Clojure/aleph/src/hello/handler.clj b/frameworks/Clojure/aleph/src/hello/handler.clj
index 758f5e8c98d..d7de60ebe49 100644
--- a/frameworks/Clojure/aleph/src/hello/handler.clj
+++ b/frameworks/Clojure/aleph/src/hello/handler.clj
@@ -19,7 +19,15 @@
(def jdbc-opts {:builder-fn rs/as-unqualified-maps})
(def db-spec
- {:jdbcUrl "jdbc:postgresql://tfb-database/hello_world?user=benchmarkdbuser&password=benchmarkdbpass"})
+ {:auto-commit false
+ :connection-timeout 1000
+ :validation-timeout 1000
+ :idle-timeout 15000
+ :max-lifetime 60000
+ :minimum-idle 0
+ :maximum-pool-size 128
+ :register-mbeans false
+ :jdbcUrl "jdbc:postgresql://tfb-database/hello_world?user=benchmarkdbuser&password=benchmarkdbpass"})
(def datasource
(connection/->pool HikariDataSource db-spec))
@@ -62,7 +70,7 @@
jdbc-opts))
(defn- update-world
- [{:keys [randomnumber id]}]
+ [{:keys [randomnumber id]}]
(jdbc/execute-one! datasource
["update \"World\" set randomNumber = ? where id = ? returning *;" randomnumber id]
jdbc-opts))
diff --git a/frameworks/Clojure/compojure/compojure-raw.dockerfile b/frameworks/Clojure/compojure/compojure-raw.dockerfile
index 08aa20a839b..2a3a4758188 100644
--- a/frameworks/Clojure/compojure/compojure-raw.dockerfile
+++ b/frameworks/Clojure/compojure/compojure-raw.dockerfile
@@ -13,4 +13,4 @@ COPY resin.xml conf/resin.xml
EXPOSE 8080
-CMD ["java", "-jar", "lib/resin.jar", "console"]
+CMD ["java", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "lib/resin.jar", "console"]
diff --git a/frameworks/Clojure/compojure/compojure.dockerfile b/frameworks/Clojure/compojure/compojure.dockerfile
index 08aa20a839b..5205fcb18e6 100644
--- a/frameworks/Clojure/compojure/compojure.dockerfile
+++ b/frameworks/Clojure/compojure/compojure.dockerfile
@@ -13,4 +13,4 @@ COPY resin.xml conf/resin.xml
EXPOSE 8080
-CMD ["java", "-jar", "lib/resin.jar", "console"]
+CMD ["java", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true","-jar", "lib/resin.jar", "console"]
diff --git a/frameworks/Clojure/http-kit/http-kit-raw.dockerfile b/frameworks/Clojure/http-kit/http-kit-raw.dockerfile
index d7e2dcbc93d..f0f00881f3f 100644
--- a/frameworks/Clojure/http-kit/http-kit-raw.dockerfile
+++ b/frameworks/Clojure/http-kit/http-kit-raw.dockerfile
@@ -7,4 +7,4 @@ RUN lein uberjar
EXPOSE 8080
-CMD ["java", "-server", "-jar", "target/http-kit-standalone.jar"]
+CMD ["java", "-server", "-Dclojure.compiler.direct-linking=true", "-jar", "target/http-kit-standalone.jar"]
diff --git a/frameworks/Clojure/http-kit/http-kit.dockerfile b/frameworks/Clojure/http-kit/http-kit.dockerfile
index d7e2dcbc93d..f0f00881f3f 100644
--- a/frameworks/Clojure/http-kit/http-kit.dockerfile
+++ b/frameworks/Clojure/http-kit/http-kit.dockerfile
@@ -7,4 +7,4 @@ RUN lein uberjar
EXPOSE 8080
-CMD ["java", "-server", "-jar", "target/http-kit-standalone.jar"]
+CMD ["java", "-server", "-Dclojure.compiler.direct-linking=true", "-jar", "target/http-kit-standalone.jar"]
diff --git a/frameworks/Clojure/kit/deps.edn b/frameworks/Clojure/kit/deps.edn
index 972f7bb3d3f..9fc78535261 100644
--- a/frameworks/Clojure/kit/deps.edn
+++ b/frameworks/Clojure/kit/deps.edn
@@ -15,7 +15,7 @@
;; HTML templating
selmer/selmer {:mvn/version "1.12.62"}
- org.clojars.jj/majavat {:mvn/version "1.12.3"}
+ org.clojars.jj/majavat {:mvn/version "1.13.0"}
hiccup/hiccup {:mvn/version "2.0.0"}
;; Database
diff --git a/frameworks/Clojure/kit/kit-hiccup.dockerfile b/frameworks/Clojure/kit/kit-hiccup.dockerfile
index c4b1990a3f8..01449abe9b0 100644
--- a/frameworks/Clojure/kit/kit-hiccup.dockerfile
+++ b/frameworks/Clojure/kit/kit-hiccup.dockerfile
@@ -13,7 +13,7 @@ COPY --from=build /target/te-bench-standalone.jar /te-bench/te-bench-standalone.
EXPOSE 8080
ENV PORT=8080
-ENV JAVA_OPTS="-XX:+UseContainerSupport -Dfile.encoding=UTF-8"
+ENV JAVA_OPTS="-XX:+UseContainerSupport -Dfile.encoding=UTF-8 -XX:MaxRAMPercentage=70 -Dclojure.compiler.direct-linking=true"
ENV JDBC_URL="jdbc:postgresql://tfb-database/hello_world?user=benchmarkdbuser&password=benchmarkdbpass"
ENTRYPOINT exec java $JAVA_OPTS -jar /te-bench/te-bench-standalone.jar
diff --git a/frameworks/Clojure/kit/kit-majavat.dockerfile b/frameworks/Clojure/kit/kit-majavat.dockerfile
index c4b1990a3f8..ab578f90cf7 100644
--- a/frameworks/Clojure/kit/kit-majavat.dockerfile
+++ b/frameworks/Clojure/kit/kit-majavat.dockerfile
@@ -13,7 +13,7 @@ COPY --from=build /target/te-bench-standalone.jar /te-bench/te-bench-standalone.
EXPOSE 8080
ENV PORT=8080
-ENV JAVA_OPTS="-XX:+UseContainerSupport -Dfile.encoding=UTF-8"
+ENV JAVA_OPTS="-XX:+UseContainerSupport -Dfile.encoding=UTF-8 -XX:MaxRAMPercentage=70 -Dclojure.compiler.direct-linking=true"
ENV JDBC_URL="jdbc:postgresql://tfb-database/hello_world?user=benchmarkdbuser&password=benchmarkdbpass"
ENTRYPOINT exec java $JAVA_OPTS -jar /te-bench/te-bench-standalone.jar
diff --git a/frameworks/Clojure/kit/kit.dockerfile b/frameworks/Clojure/kit/kit.dockerfile
index c4b1990a3f8..ab578f90cf7 100644
--- a/frameworks/Clojure/kit/kit.dockerfile
+++ b/frameworks/Clojure/kit/kit.dockerfile
@@ -13,7 +13,7 @@ COPY --from=build /target/te-bench-standalone.jar /te-bench/te-bench-standalone.
EXPOSE 8080
ENV PORT=8080
-ENV JAVA_OPTS="-XX:+UseContainerSupport -Dfile.encoding=UTF-8"
+ENV JAVA_OPTS="-XX:+UseContainerSupport -Dfile.encoding=UTF-8 -XX:MaxRAMPercentage=70 -Dclojure.compiler.direct-linking=true"
ENV JDBC_URL="jdbc:postgresql://tfb-database/hello_world?user=benchmarkdbuser&password=benchmarkdbpass"
ENTRYPOINT exec java $JAVA_OPTS -jar /te-bench/te-bench-standalone.jar
diff --git a/frameworks/Clojure/luminus/luminus.dockerfile b/frameworks/Clojure/luminus/luminus.dockerfile
index 9ea8a1607ac..d57102d5b41 100644
--- a/frameworks/Clojure/luminus/luminus.dockerfile
+++ b/frameworks/Clojure/luminus/luminus.dockerfile
@@ -12,4 +12,4 @@ COPY --from=lein /luminus/target/hello.jar app.jar
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:+UseParallelGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar"]
diff --git a/frameworks/Clojure/pedestal/pedestal.dockerfile b/frameworks/Clojure/pedestal/pedestal.dockerfile
index d0407c3c50c..fb3e7e23d34 100644
--- a/frameworks/Clojure/pedestal/pedestal.dockerfile
+++ b/frameworks/Clojure/pedestal/pedestal.dockerfile
@@ -8,4 +8,4 @@ RUN lein uberjar
EXPOSE 8080
-CMD ["java", "-jar", "-Dio.pedestal.log.defaultMetricsRecorder=nil", "-Dio.pedestal.log.overrideLogger=nil", "target/pedestal-standalone.jar"]
+CMD ["java", "-Dclojure.compiler.direct-linking=true", "-jar", "-Dio.pedestal.log.defaultMetricsRecorder=nil", "-Dio.pedestal.log.overrideLogger=nil", "target/pedestal-standalone.jar"]
diff --git a/frameworks/Clojure/reitit/benchmark_config.json b/frameworks/Clojure/reitit/benchmark_config.json
index e3793e46827..6f755e49966 100755
--- a/frameworks/Clojure/reitit/benchmark_config.json
+++ b/frameworks/Clojure/reitit/benchmark_config.json
@@ -39,6 +39,8 @@
"versus": ""
},
"async": {
+ "json_url": "/json",
+ "plaintext_url": "/plaintext",
"db_url": "/db",
"port": 8080,
"approach": "Realistic",
diff --git a/frameworks/Clojure/reitit/reitit-jdbc.dockerfile b/frameworks/Clojure/reitit/reitit-jdbc.dockerfile
index e202481097a..f58599d0ccb 100644
--- a/frameworks/Clojure/reitit/reitit-jdbc.dockerfile
+++ b/frameworks/Clojure/reitit/reitit-jdbc.dockerfile
@@ -10,4 +10,4 @@ COPY --from=lein /reitit/target/hello-reitit-standalone.jar app.jar
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar", "sync"]
+CMD ["java", "-server", "-XX:+UseParallelGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar", "sync"]
diff --git a/frameworks/Clojure/reitit/reitit.dockerfile b/frameworks/Clojure/reitit/reitit.dockerfile
index 2915a6efd2c..da4069ba341 100644
--- a/frameworks/Clojure/reitit/reitit.dockerfile
+++ b/frameworks/Clojure/reitit/reitit.dockerfile
@@ -10,4 +10,4 @@ COPY --from=lein /reitit/target/hello-reitit-standalone.jar app.jar
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:+UseParallelGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar"]
diff --git a/frameworks/Clojure/ring-http-exchange/project.clj b/frameworks/Clojure/ring-http-exchange/project.clj
index 448d887f73e..e0734cff1a5 100644
--- a/frameworks/Clojure/ring-http-exchange/project.clj
+++ b/frameworks/Clojure/ring-http-exchange/project.clj
@@ -6,9 +6,9 @@
:dependencies [[org.clojure/clojure "1.12.3"]
[org.clojure/tools.logging "1.3.0"]
- [org.clojars.jj/ring-http-exchange "1.2.4"]
+ [org.clojars.jj/ring-http-exchange "1.2.9"]
[seancorfield/next.jdbc "1.2.659"]
- [org.clojars.jj/majavat "1.12.3"]
+ [org.clojars.jj/majavat "1.13.0"]
[hikari-cp "3.3.0"]
[org.clojars.jj/boa-sql "1.0.0"]
[org.postgresql/postgresql "42.7.8"]
diff --git a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-graalvm.dockerfile b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-graalvm.dockerfile
index 53a3998cd03..ad82982bcd9 100644
--- a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-graalvm.dockerfile
+++ b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-graalvm.dockerfile
@@ -11,4 +11,4 @@ COPY --from=lein /ring-http-exchange/target/ring-http-server-1.0.0-standalone.ja
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:+UseZGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar"]
diff --git a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-graalvm.dockerfile b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-graalvm.dockerfile
index 8af31aebae0..151a6746e12 100644
--- a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-graalvm.dockerfile
+++ b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-graalvm.dockerfile
@@ -11,4 +11,4 @@ COPY --from=lein /ring-http-exchange/target/ring-http-server-1.0.0-standalone.ja
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:+UseZGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar"]
diff --git a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-semeru.dockerfile b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-semeru.dockerfile
index 64f06a3418a..bffbb459912 100644
--- a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-semeru.dockerfile
+++ b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho-semeru.dockerfile
@@ -11,4 +11,4 @@ COPY --from=lein /ring-http-exchange/target/ring-http-server-1.0.0-standalone.ja
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-Xtune:throughput", "-Xgcpolicy:optthruput", "-XX:MaxRAMPercentage=70", "-XX:+UseContainerSupport", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar"]
diff --git a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho.dockerfile b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho.dockerfile
index b53eb194c09..095040b74d0 100644
--- a/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho.dockerfile
+++ b/frameworks/Clojure/ring-http-exchange/ring-http-exchange-robaho.dockerfile
@@ -11,4 +11,4 @@ COPY --from=lein /ring-http-exchange/target/ring-http-server-1.0.0-standalone.ja
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:+UseZGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar"]
diff --git a/frameworks/Clojure/ring-http-exchange/ring-http-exchange.dockerfile b/frameworks/Clojure/ring-http-exchange/ring-http-exchange.dockerfile
index 0910a6d9850..f7b8946ab06 100644
--- a/frameworks/Clojure/ring-http-exchange/ring-http-exchange.dockerfile
+++ b/frameworks/Clojure/ring-http-exchange/ring-http-exchange.dockerfile
@@ -11,4 +11,4 @@ COPY --from=lein /ring-http-exchange/target/ring-http-server-1.0.0-standalone.ja
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:+UseZGC", "-XX:MaxRAMPercentage=70", "-Dclojure.compiler.direct-linking=true", "-jar", "app.jar"]
diff --git a/frameworks/Clojure/ring-http-exchange/src/ring_http_exchange/benchmark.clj b/frameworks/Clojure/ring-http-exchange/src/ring_http_exchange/benchmark.clj
index 24063d085e6..6629b7c6a39 100644
--- a/frameworks/Clojure/ring-http-exchange/src/ring_http_exchange/benchmark.clj
+++ b/frameworks/Clojure/ring-http-exchange/src/ring_http_exchange/benchmark.clj
@@ -12,36 +12,35 @@
(com.zaxxer.hikari HikariDataSource)
(java.util.concurrent Executors)))
+(defrecord Response [body status headers])
+
(def query-fortunes (boa/execute (boa/->NextJdbcAdapter) "fortune.sql"))
(def db-spec {:auto-commit false
- :connection-timeout 3000
+ :connection-timeout 1000
:validation-timeout 1000
- :idle-timeout 300000
- :max-lifetime 1800000
- :minimum-idle 128
- :maximum-pool-size 1024
+ :idle-timeout 15000
+ :max-lifetime 60000
+ :minimum-idle 0
+ :maximum-pool-size 128
:register-mbeans false
- :jdbcUrl "jdbc:postgresql://tfb-database/hello_world?user=benchmarkdbuser&password=benchmarkdbpass&prepareThreshold=1"})
+ :jdbcUrl "jdbc:postgresql://tfb-database/hello_world?user=benchmarkdbuser&password=benchmarkdbpass&prepareThreshold=1"}
+ )
+(def ^:private ^:const hello-world "Hello, World!")
(def ^:private ^:const additional-message {:id 0
:message "Additional fortune added at request time."})
(def ^:private ^:const fortune-headers {"Server" "ring-http-exchange"
"Content-Type" "text/html; charset=UTF-8"})
(def ^:private ^:const json-headers {"Server" "ring-http-exchange"
"Content-Type" "application/json"})
+(def ^:private ^:const plain-text-headers {"Server" "ring-http-exchange"
+ "Content-Type" "text/plain"})
(def ^:private render-fortune (majavat/build-renderer "fortune.html"
{:renderer (->StringRenderer
{:sanitizer (->Html)})}))
-
-(defn- plaintext-response []
- {:status 200
- :headers {"Server" "ring-http-exchange"
- "Content-Type" "text/plain"}
- :body "Hello, World!"})
-
(defn- get-body [datasource]
(let [context (as-> (query-fortunes datasource) fortunes
(conj fortunes additional-message)
@@ -50,23 +49,17 @@
(defn -main
[& _]
- (System/setProperty "jdk.virtualThreadScheduler.parallelism"
- (str (* 4 (.availableProcessors (Runtime/getRuntime)))))
-
(println "Starting server on port 8080")
(let [datasource (connection/->pool HikariDataSource db-spec)]
(server/run-http-server
(fn [req]
(case (req :uri)
- "/plaintext" (plaintext-response)
- "/json" {:status 200
- :headers json-headers
- :body (json/write-value-as-bytes {:message "Hello, World!"})}
- "/fortunes" (let [body (get-body datasource)]
- {:status 200
- :headers fortune-headers
- :body body})
- (plaintext-response)))
- {:port 8080
- :host "0.0.0.0"
- :executor (Executors/newVirtualThreadPerTaskExecutor)})))
\ No newline at end of file
+ "/plaintext" (Response. hello-world 200 plain-text-headers)
+ "/json" (Response. (json/write-value-as-string {:message hello-world}) 200 json-headers)
+ "/fortunes" (let [body (get-body datasource)] (Response. body 200 fortune-headers))
+ (Response. hello-world 200 {"Server" "ring-http-exchange"
+ "Content-Type" "text/plain"})))
+ {:port 8080
+ :host "0.0.0.0"
+ :record-support? true
+ :executor (Executors/newVirtualThreadPerTaskExecutor)})))
\ No newline at end of file
diff --git a/frameworks/Java/httpserver/httpserver-graalvm.dockerfile b/frameworks/Java/httpserver/httpserver-graalvm.dockerfile
index f9cd7e29cfb..9af2d5f4026 100644
--- a/frameworks/Java/httpserver/httpserver-graalvm.dockerfile
+++ b/frameworks/Java/httpserver/httpserver-graalvm.dockerfile
@@ -10,4 +10,4 @@ COPY --from=maven /httpserver/target/httpserver-1.0-jar-with-dependencies.jar ap
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:MaxRAMPercentage=70", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-jar", "app.jar"]
diff --git a/frameworks/Java/httpserver/httpserver-postgres.dockerfile b/frameworks/Java/httpserver/httpserver-postgres.dockerfile
index 5991ae20026..6856f3431fa 100644
--- a/frameworks/Java/httpserver/httpserver-postgres.dockerfile
+++ b/frameworks/Java/httpserver/httpserver-postgres.dockerfile
@@ -10,4 +10,4 @@ COPY --from=maven /httpserver/target/httpserver-1.0-jar-with-dependencies.jar ap
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-jar", "app.jar", "postgres"]
+CMD ["java", "-server", "-XX:MaxRAMPercentage=70", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-jar", "app.jar", "postgres"]
diff --git a/frameworks/Java/httpserver/httpserver-robaho-graalvm.dockerfile b/frameworks/Java/httpserver/httpserver-robaho-graalvm.dockerfile
index 44b6b0975f0..f6646e3095e 100644
--- a/frameworks/Java/httpserver/httpserver-robaho-graalvm.dockerfile
+++ b/frameworks/Java/httpserver/httpserver-robaho-graalvm.dockerfile
@@ -10,4 +10,4 @@ COPY --from=maven /httpserver-robaho/target/httpserver-1.0-jar-with-dependencies
EXPOSE 8080
-CMD ["java", "-server", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:MaxRAMPercentage=70", "-jar", "app.jar"]
diff --git a/frameworks/Java/httpserver/httpserver-robaho-postgres.dockerfile b/frameworks/Java/httpserver/httpserver-robaho-postgres.dockerfile
index e7bdfb11102..0b99cb7fe41 100644
--- a/frameworks/Java/httpserver/httpserver-robaho-postgres.dockerfile
+++ b/frameworks/Java/httpserver/httpserver-robaho-postgres.dockerfile
@@ -10,4 +10,4 @@ COPY --from=maven /httpserver-robaho/target/httpserver-1.0-jar-with-dependencies
EXPOSE 8080
-CMD ["java", "-server", "-jar", "app.jar", "postgres"]
+CMD ["java", "-server", "-XX:MaxRAMPercentage=70", "-jar", "app.jar", "postgres"]
diff --git a/frameworks/Java/httpserver/httpserver-robaho.dockerfile b/frameworks/Java/httpserver/httpserver-robaho.dockerfile
index 77f57658d2a..0943f9f7ef2 100644
--- a/frameworks/Java/httpserver/httpserver-robaho.dockerfile
+++ b/frameworks/Java/httpserver/httpserver-robaho.dockerfile
@@ -10,4 +10,4 @@ COPY --from=maven /httpserver-robaho/target/httpserver-1.0-jar-with-dependencies
EXPOSE 8080
-CMD ["java", "-server", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:MaxRAMPercentage=70", "-jar", "app.jar"]
diff --git a/frameworks/Java/httpserver/httpserver.dockerfile b/frameworks/Java/httpserver/httpserver.dockerfile
index b50fbadc157..2de799e386d 100644
--- a/frameworks/Java/httpserver/httpserver.dockerfile
+++ b/frameworks/Java/httpserver/httpserver.dockerfile
@@ -10,4 +10,4 @@ COPY --from=maven /httpserver/target/httpserver-1.0-jar-with-dependencies.jar ap
EXPOSE 8080
-CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-jar", "app.jar"]
+CMD ["java", "-server", "-XX:MaxRAMPercentage=70", "-XX:+UseNUMA", "-XX:+UseParallelGC", "-jar", "app.jar"]
diff --git a/frameworks/Java/httpserver/pom.xml b/frameworks/Java/httpserver/pom.xml
index 5b983699fe6..58cf78deeda 100644
--- a/frameworks/Java/httpserver/pom.xml
+++ b/frameworks/Java/httpserver/pom.xml
@@ -68,7 +68,7 @@
true
org.apache.maven.plugins
maven-compiler-plugin
- 3.8.0
+ 3.14.1
false
21
diff --git a/frameworks/Java/httpserver/src/main/java/benchmarks/Server.java b/frameworks/Java/httpserver/src/main/java/benchmarks/Server.java
index 80566641a9f..799f183f46b 100755
--- a/frameworks/Java/httpserver/src/main/java/benchmarks/Server.java
+++ b/frameworks/Java/httpserver/src/main/java/benchmarks/Server.java
@@ -51,7 +51,7 @@ private static List queryFortunes(DataSource ds) throws SQLException {
return fortunes;
}
- private static DataSource createPostgresDataSource() throws ClassNotFoundException {
+ private static DataSource createPostgresDataSource() {
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:postgresql://tfb-database:5432/hello_world");
@@ -59,11 +59,11 @@ private static DataSource createPostgresDataSource() throws ClassNotFoundExcepti
config.setPassword("benchmarkdbpass");
config.setMaximumPoolSize(64);
- config.setMinimumIdle(16);
+ config.setMinimumIdle(0);
- config.setConnectionTimeout(10000);
- config.setIdleTimeout(600000);
- config.setMaxLifetime(1800000);
+ config.setConnectionTimeout(1000);
+ config.setIdleTimeout(15000);
+ config.setMaxLifetime(60000);
config.setAutoCommit(true);