3. история вопроса
● распространенное мнение: java ==
кровавый энтерпрайз
● некоторым хочется легкости (не в
ущерб преимуществ java)
● dropwizard -- легковесный
фреймворк для веб (It's an answer to the
complexity of Java Web and Application Containers,
which tend to be overkill for 90% of your use-cases.)
4. об авторе
● Coda Hale (codahale.com)
● «I’m a software engineer in Berkeley,
CA.»
● Principal Software Developer
(Microsoft), Infrastructure Architect
(Yammer)
5. определение
● Dropwizard is a Java framework for
developing ops-friendly, high-
performance, RESTful web services.
● Основная идея: pulls together stable,
mature libraries from the Java
ecosystem into a simple, light-weight
package.
● Название: что такое dropwizard?
7. компоненты dropwizard'а
● Jetty for HTTP
● Jersey for REST
● Jackson for JSON
● Metrics for metrics
● Guava (highly optimized immutable data structures,
speed up development)
● Logback and slf4j for performant logging
● Hibernate Validator (JSR-303)
● Apache HttpClient and Jersey client (interaction with
other web services)
● JDBI or Hibernate
● Liquibase
● Freemarker or Mustache (simple template system)
● Joda Time (handling dates and times)
8. Jetty
● Incredibly tuned embedded HTTP server.
● Running your service as a simple process.
● No PermGen issues
● No application server configuration and
maintenance
● No arcane deployment tools
● No ClassLoader troubles
● No hidden application logs
● No trying to tune a single garbage collector
to work with multiple application workloads
9. Jersey
● JAX-RS (JSR 311: Java API for RESTful
Web Services)
● full-featured RESTful web framework
● nothing beats in terms of features and
performance
● allows to write clean, testable classes which
gracefully map HTTP requests to simple
Java objects
● supports streaming output, matrix URI
parameters, conditional GET requests
● and much, much more
11. Metrics
● powerful toolkit of ways to measure the
behavior of critical components in your
production environment
● with modules for common libraries like Jetty,
Logback, Log4j, Apache HttpClient,
Ehcache, JDBI, Jersey and reporting
backends like Ganglia and Graphite,
Metrics provides you with full-stack visibility.