Back to Frameworkbenchmarks

Dropwizard Benchmarking Test

frameworks/Java/dropwizard/README.md

33.1 KB
Original Source

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 implementationDropwizard Service classDropwizard Configuration classMaven profile
MongoDB&MongoJackHelloMongoService.javaHelloMongoConfiguration.java-P mongo
MySQL&HibernateHelloWorldService.javaHelloWorldConfiguration.java-P mysql
PostgreSQL&HibernateHelloWorldService.javaHelloWorldConfiguration.java-P postgres
PostgreSQL&JDBIHelloJDBIService.javaHelloWorldConfiguration.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