Radoslav Petrov 3bd9c32be7 Update ratpack to Java 11 and dependencies (#4782) 6 years ago
..
src 34fc4aeee3 - Upgrade to ratpack 1.6 (#4609) 6 years ago
.gitignore 950ed7ae52 Submission for the java ratpack framework (#3956) 7 years ago
README.md 34fc4aeee3 - Upgrade to ratpack 1.6 (#4609) 6 years ago
benchmark_config.json ff68751c68 Add pgclient to benchmark the asynchronous aspect of ratpack when accessing a database (#4106) 6 years ago
build.gradle 3bd9c32be7 Update ratpack to Java 11 and dependencies (#4782) 6 years ago
ratpack-jdbc.dockerfile 3bd9c32be7 Update ratpack to Java 11 and dependencies (#4782) 6 years ago
ratpack-pgclient.dockerfile 3bd9c32be7 Update ratpack to Java 11 and dependencies (#4782) 6 years ago
ratpack.dockerfile 3bd9c32be7 Update ratpack to Java 11 and dependencies (#4782) 6 years ago

README.md

Ratpack Benchmarking Test

This is the Ratpack portion of a benchmarking test suite comparing a variety of web development platforms.

Ratpack's hikari module is used to managed the connection pool. It is configured for a maximum of (2 * cores count) concurrent connections. See About-Pool-Sizing for more information. I am assuming that the DB is running on a computer with the same spec as the one running the app, which seems to be the case based on what is written here

Ratpack's handlebars module is used to render the fortune template.

There are two repository implementations.

  • JdbcRepository is using JDBC and an unbounded thread pool to prevent blocking the main event loop.
  • PgClientRepository is using an asynchronous driver to query the database.

Plaintext Test

JSON Serialization Test

Database Query Test

Database Queries Test

Database Update Test

Template rendering Test

Versions

Test URLs

Plaintext Test

http://localhost:5050/plaintext

JSON Encoding Test

http://localhost:5050/json

Database Query Test

http://localhost:5050/db

Database Queries Test

http://localhost:5050/queries?queries=5

Database Update Test

http://localhost:5050/updates?queries=5

Template rendering Test

http://localhost:5050/fortunes