Dropwizard is more similar to spring boot than guice, but is more a
collection of libraries than an enterprise-style framework like spring.

It has a fairly strong developer community, and the rationale behind
targeting something like this as opposed to spring is that users seeking to
build a more complicated distributed application are likely to opt for
building blocks that give them more control.

Here are some of the other modules offered: http://modules.dropwizard.io/.
(There's actually already a service discovery module, but the intention of
dropwizard-helix is to eventually go beyond that).

-Greg

On Mon, Dec 7, 2015 at 2:07 PM, kishore g <[email protected]> wrote:

> This is interesting. I will try to read up some more about this framework.
> Are there any other frameworks that support similar behavior. Is this
> comparable to spring, guice etc?
>
>
>
> On Sat, Dec 5, 2015 at 3:49 PM, Greg Brandt <[email protected]> wrote:
>
>> Hey,
>>
>> If you're not familiar with it, Dropwizard (http://www.dropwizard.io/)
>> is a really good Java framework for building web applications. It has
>> basically everything you'd need to build a web application - JDBI (or
>> Hibernate), views, authentication, etc. and leverages solid existing
>> components (Jetty, Jersey, Jackson, Metrics).
>>
>> One thing that it is lacking is the ability to easily deploy distributed
>> applications, so I created a module that aims to make it very simple to use
>> Helix to accomplish that: https://github.com/brandtg/dropwizard-helix
>>
>> Currently it only does really simple service discovery, but I think there
>> are a lot of complementary features between the two frameworks that we
>> could explore. For example, Dropwizard's task interface (
>> http://www.dropwizard.io/0.9.1/docs/manual/core.html#tasks) could
>> leverage Helix's task framework to make running distributed tasks easy.
>>
>> My idea is to basically offer the Helix recipes as Dropwizard bundles,
>> requiring no code from the user other than adding the bundle / config, then
>> have an advanced mode where one can basically just provide state transition
>> handler / factory class for things like master / slave. But the bundle
>> would take care of all the details like computing instance name,
>> connecting, etc.
>>
>> You can see it in use here:
>> https://github.com/brandtg/dropwizard-helix/blob/master/src/test/java/com/github/brandtg/discovery/TestHelixServiceDiscoveryBundle.java
>>
>> -Greg
>>
>
>

Reply via email to