I'll chime in with a couple of comments about Storm vs Onyx.

I've used Storm in a production application, so I'm fairly familiar with 
it. I haven't spent too much time playing with Onyx yet, but will be soon. 
>From what I do know about it and Storm though, I can say the following:

Both Storm and Onyx are similar in that you specify distributed 
computations via computational topologies. So in general, you can do 
similar pretty things with them. So for the differences:

   - Storm is certainly much more mature at this point.
   - At the moment, Storm is much faster, though Michael D. has some plans 
   for stealing some of the performance tricks and intergrating them into Onyx.
   - The *main *difference: As Deon points out, Storm's functionality is 
   heavily built on macros, and rather opaque. In contrast, Onyx embraces 
   using simple data structures to describe the flow of a computation. This 
   makes the specification of computational flow much more modular and 
   composable, to the extant that it's even possible to modify the 
   computational flow at runtime.
   - Onyx is built from the ground up in Clojure, for Clojure, whereas 
   Storm has a lot of Java under the hood, and places stronger emphasis on 
   it's Java API than it's Clojure API 
   - Onyx is moving (has moved? forget now...) to a very clever masterless 
   architecture, while Storm depends on Zookeper, which is a pretty massive 
   piece of software.

If you need something that's battled tested right away, Storm may be your 
best bet. But I think as it matures (and it's developing quickly and 
beginning to get production adoption), it's going to win out over Storm, at 
least within the Clojure community, for the strengths mentioned above. The 
value of embracing data structures for the sake of composability is well 
argued and described in Zach Tellman's Always Be Composing 
<https://www.youtube.com/watch?v=3oQTSP4FngY> talk; this is something that 
seems to be catching on among Clojurists, and will likely see Onyx gain 
significant traction.

My two cents...

Chris Small


On Friday, February 13, 2015 at 11:34:36 AM UTC-8, Deon Moolman wrote:
>
> Hi Aaron,
>
> Onyx is still quite young, but incredibly promising. I absolutely enjoy 
> the way that they have teased apart the different bits of distributed 
> systems. I highly recommend getting involved in the project, they're going 
> to do great things.
>
> As for Storm, I haven't really used it so I'm not really qualified to 
> comment. I've stayed away from it mostly because the defspout and defbolt 
> macros made a deep part inside me cringe. Other than that, I'm sure it's a 
> perfectly capable platform and I've heard people doing a lot of great 
> things with it.
>
> Onyx really just translates to a library, at the end of the day. You build 
> your application on top of it and manage firing up your peers inside each 
> process yourself. This gives you as an application developer immense 
> flexibilty. Deployment is outside the scope of Onyx - it assumes you've got 
> that covered. I think that's a very wise assumption, given that the ways to 
> deploy jars are diverse.
>
> Cheers,
>  - Deon
>
> On Friday, 13 February 2015 02:04:26 UTC+2, Aaron France wrote:
>>
>> Hi,
>>
>> What are your opinions on Onyx?
>>
>> What are your opinions on Onyx compared to Storm?
>>
>> What are your opinions on Onyx deployment?
>>
>> Aaron
>>  
>>
>> On Thursday, 12 February 2015 10:15:44 UTC+1, Deon Moolman wrote:
>>>
>>> Hi everyone,
>>>
>>> I spent some time putting together an implementation of the CQRS pattern 
>>> in Clojure and wrote an article on it:
>>>
>>> http://yuppiechef.github.io/cqrs-server/
>>>
>>>
>>> It mostly boils down to an Onyx (
>>> http://www.github.com/MichaelDrogalis/onyx) configuration, but it's 
>>> been an interesting journey that I felt is worthwhile sharing.
>>>
>>> Feedback really appreciated!
>>>
>>> Cheers,
>>>  - Deon
>>>
>>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to