dependabot[bot] a8f282f844 Bump hibernate-core in /frameworks/Java/dropwizard (#7116) 3 rokov pred
..
src df0ae319ac Fix dropwizard postgres (#5371) 5 rokov pred
README.md 9d6006c3dc [fi fw-only Java/dropwizard] update dependencies (#4082) 6 rokov pred
benchmark_config.json df0ae319ac Fix dropwizard postgres (#5371) 5 rokov pred
config.toml 0096f84ee9 Config for the new toolset (#6259) 4 rokov pred
dropwizard-jdbi-postgres.dockerfile 0096f84ee9 Config for the new toolset (#6259) 4 rokov pred
dropwizard-mongodb.dockerfile 0096f84ee9 Config for the new toolset (#6259) 4 rokov pred
dropwizard-postgres.dockerfile 0096f84ee9 Config for the new toolset (#6259) 4 rokov pred
dropwizard.dockerfile 0096f84ee9 Config for the new toolset (#6259) 4 rokov pred
hello-world-jdbi-postgres.yml 319fc28d21 Java/dropwizard - Remove additional array creation in update test (#4852) 6 rokov pred
hello-world-mongo.yml 0e1a9ef20a Explicitly set MongoDB connection parameters (#4097) 6 rokov pred
hello-world-mysql.yml 7550fc9ff3 Update MySQL JDBC driver to 8.0.18 (#5225) 5 rokov pred
hello-world-postgres.yml 380da427da Print runtime errors in dropwizard, update dependencies (#3595) 7 rokov pred
pom.xml a8f282f844 Bump hibernate-core in /frameworks/Java/dropwizard (#7116) 3 rokov pred

README.md

Dropwizard Benchmarking Test

Dropwizard - ops-friendly, high-performance, RESTful web services.

Mustashe tempate is used for the HTML tests. Test implementations with MongoDB, MySQL and PostgreSQL for backing datastore. Test implementations with Hibernate and JDBI as ORM frameworks, MongoJack for POJO to MongoDB document mapping.

Note: The Dropwizard Metrics are enabled and gathering data during the test runs.

Test sources

All test implementations share the same API end-points and POJO model classes. The API end-points are called resources in Dropwizard. This is the list:

Source code organisation

Test implementation Dropwizard Service class Dropwizard Configuration class Maven profile
MongoDB&MongoJack HelloMongoService.java HelloMongoConfiguration.java -P mongo
MySQL&Hibernate HelloWorldService.java HelloWorldConfiguration.java -P mysql
PostgreSQL&Hibernate HelloWorldService.java HelloWorldConfiguration.java -P postgres
PostgreSQL&JDBI HelloJDBIService.java HelloWorldConfiguration.java -P postgres,jdbi

Each implementation has its own set of .yml configuration file and shell script.

MongoDB

(MySQL or PostgreSQL) and Hibernate

The Updates test is using JDBC batch updates and manual transaction handling.

PostgeSQL and JDBI

Software Versions

The tests were run with:

Please check the versions in the install scripts of TFB project.

Test URLs

All implementations use the same URLs.

  • Plaintext - http://localhost:9090/plaintext
  • JSON - http://localhost:9090/json
  • DB - http://localhost:9090/db
  • Queries - http://localhost:9090/db?queries=
  • Updates - http://localhost:9090/db/update?queries=?
  • Fortune - http://localhost:9090/fortunes