Dropwizard

Pragmatische Web Services mit Dropwizard

Dropwizard Logo
Dropwizard Website

Dropwizard is a Java framework for developing ops-friendly, high-performance, RESTful web services.

Dropwizard pulls together stable, mature libraries from the Java ecosystem into a simple, light-weight package that lets you focus on getting things done.

Dropwizard has out-of-the-box support for sophisticated configuration, application metrics, logging, operational tools, and much more, allowing you and your team to ship a production-quality web service in the shortest time possible.

Dropwizard Metrics Website

Eine kurze Geschichte des Frameworks

  • Entwickelt von Coda Hale bei Yammer

  • Häufig auftretende Muster der Services bei Yammer in ein Framework extrahiert

  • Erstes Release: 2011-12-22 (Dropwizard 0.1.0)

  • Eigenständiges Projekt seit 2014 (Dropwizard 0.7.0)

Warum Dropwizard?

  • Dropwizard bringt viele Standardkomponenten mit

  • Bekannte und gut abgehangene Bibliotheken: "Langweilige" Technologien

  • Gute Dokumentation

  • Wiederverwendung von Java EE Wissen

  • Alle Teile so gut wie möglich integriert

  • Operations friendly

  • Kurze Time-to-Market

Langweilige Technologien (1)

  • Jetty als Web-Server (HTTP, HTTPS, HTTP/2)

  • Jersey (JAX-RS) als Web-Framework

  • Jackson für (De-) Serialisierung

  • Logback und SLF4J für Logging

  • Freemarker oder Mustache für Templates

  • JDBI oder Hibernate für Persistenz

Langweilige Technologien (2)

  • Guava als Ergänzung zur Java Standardbibliothek

  • Hibernate Validator zur Validierung von Daten

  • Liquibase für Datenmigration

  • Guter Support für Tests (vorzugsweise JUnit)

  • …und vieles mehr, siehe Dropwizard User Manual

Operations friendly

  • Healthchecks

  • Commands (ad-hoc ausführbare Aktionen)

  • Tasks (ad-hoc ausführbare Aktionen via HTTP)

  • Metrics (via Dropwizard Metrics)

  • Gut konfigurierbares Logging (Logback, SLF4J)

  • Einfaches Deployment als JAR-Datei

Erweiterungen

Die liebe Verwandtschaft

Demo

Wer benutzt eigentlich Dropwizard?

Kontakt

Yoshi

Fragen?

Weiterführende Quellen

Warum eigentlich der komische Name?

Gunshow – drop wizard