Thanks guys!

I'll go with ring + compojure bundled with cheshire json and clojuremongodb 
as a starting point and see where I get to.
I'm all in favour of pleasant suprises!

David.

On Wednesday, 5 September 2012 03:05:33 UTC+1, Gaz wrote:
>
> We do all of the things you mention (minus the replay, but that would 
> be trivial) in Clojure where I work, and it is remarkably easy. We 
> use: 
>
> * ring + compojure and an embedded jetty server to create lightweight 
> webservers 
> * the Cheshire JSON encoding/decoding library for all JSON purposes 
> (https://github.com/dakrone/cheshire) 
> * we wrote our own small wrapper around rabbitmq - but there are 
> several available now (such as 
> https://github.com/michaelklishin/langohr) 
> * for mongo we use: http://clojuremongodb.info/ 
>
> We also found that when processing JSON messages, multimethods can be 
> extremely useful as a dispatch mechanism if the shape of the JSON data 
> dictates what should happen to it. I would certainly recommend Clojure 
> for what you describe, I think you will be pleasantly suprised how 
> straightforward it is :) 
>
> On Tue, Sep 4, 2012 at 7:05 PM, Russell Whitaker 
> <russell....@gmail.com <javascript:>> wrote: 
> > On Tue, Sep 4, 2012 at 4:45 PM, David Dawson 
> > <david....@dawsonsystems.com <javascript:>> wrote: 
> >> Hiya! 
> >> 
> >> I saw the names, but then was swamped by moustache, noir and others 
> that at 
> >> first glance appear to be in similar spaces.  I found it a bit 
> difficult to 
> >> pick out the various specialisms or layers each library is aiming at 
> tbh. 
> >> So, I thought it best to look for some guidance if possible from people 
> who 
> >> know what they're doing ... :-) 
> >> 
> > 
> > Some of us are only "ahead of you" by relative measures: I myself had 
> > to _remove_ noir 
> > & noir-async from a project today because of some reloading issues 
> > introduced by the latter; see 
> > today's (4 Sep 2012) clojure IRC log: 
> > 
> > http://clojure-log.n01se.net/ 
> > 
> > Russell 
> > 
> >> david 
> >> 
> >> 
> >> On Wednesday, 5 September 2012 00:24:46 UTC+1, Russell Whitaker wrote: 
> >>> 
> >>> On Tue, Sep 4, 2012 at 1:52 PM, David Dawson 
> >>> <david....@dawsonsystems.com> wrote: 
> >>> > Hiya, 
> >>> > 
> >>> > So, I'm a clojure newbie... and I've been asked to evaluate a few 
> >>> > different 
> >>> > technology options for a project I've been handed. 
> >>> > 
> >>> > The end result will need to be a 'router' that accepts JSON messages 
> >>> > over 
> >>> > HTTP, store them into some datastore (ideally one of the ones 
> available 
> >>> > on 
> >>> > cloudfoundry, postgres mongo etc), then forward the message onto one 
> or 
> >>> > more 
> >>> > end points.   Forwarding will probably be either dropping into 
> rabbitmq 
> >>> > or 
> >>> > posting on with HTTP. 
> >>> >  (or both). 
> >>> > 
> >>> > There also needs to be a replay capability, so you can tell the 
> router 
> >>> > to 
> >>> > scoop up the historical messages from the datastore and forward them 
> all 
> >>> > on 
> >>> > (in order) to a particular end point. 
> >>> > 
> >>> > I'm totally open to any tech, prebuilt (and commercial) or 
> development 
> >>> > required but given that the system needs some algorithmic routing 
> rules, 
> >>> > clojure seemed a really nice conceptual fit over the languages I 
> >>> > normally 
> >>> > work with (imperative jvm ones, essentially) 
> >>> > 
> >>> > So, I'm really interested in any suggestions on how this might best 
> be 
> >>> > approached in the clojure world! 
> >>> > 
> >>> 
> >>> Hi David, have you looked at Ring + Compojure? 
> >>> 
> >>> -- 
> >>> Russell Whitaker 
> >>> http://twitter.com/OrthoNormalRuss / 
> http://orthonormalruss.blogspot.com/ 
> >>> http://www.linkedin.com/pub/russell-whitaker/0/b86/329 
> >> 
> >> -- 
> >> You received this message because you are subscribed to the Google 
> >> Groups "Clojure" group. 
> >> To post to this group, send email to clo...@googlegroups.com<javascript:> 
> >> Note that posts from new members are moderated - please be patient with 
> your 
> >> first post. 
> >> To unsubscribe from this group, send email to 
> >> clojure+u...@googlegroups.com <javascript:> 
> >> For more options, visit this group at 
> >> http://groups.google.com/group/clojure?hl=en 
> > 
> > 
> > 
> > -- 
> > Russell Whitaker 
> > http://twitter.com/OrthoNormalRuss / 
> http://orthonormalruss.blogspot.com/ 
> > http://www.linkedin.com/pub/russell-whitaker/0/b86/329 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> > Groups "Clojure" group. 
> > To post to this group, send email to clo...@googlegroups.com<javascript:> 
> > Note that posts from new members are moderated - please be patient with 
> your first post. 
> > To unsubscribe from this group, send email to 
> > clojure+u...@googlegroups.com <javascript:> 
> > 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 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

Reply via email to