Yeah agreed grizzly is a very nice API Real pity Oracle completely screwed up java.net as it pretty much orphaned a tone of good support mailing list and forum posts in the process.
>From what I understand there are quite a few services using Java for this sort of thing at the moment. These guys are doing some interesting stuff if your interested in that sort of scale. http://urbanairship.com/blog/2010/08/24/c500k-in-action-at-urban-airship/ http://urbanairship.com/blog/2010/09/29/linux-kernel-tuning-for-c500k/ http://urbanairship.com/blog/2010/12/14/android-messaging-deploying-the-octobot/ All very interesting stuff which I have been keeping an eye on for a while. Not sure what they used in the end but interesting all the same :) On Wed, Jun 22, 2011 at 9:41 PM, Jon Brisbin <[email protected]> wrote: > I've looked at netty too, but I thought Grizzly was a little more mature > and I liked the abstractions of Grizzly better. > > I'm really looking into something like this for a proof of concept I'm > doing that might involve Riak in a very large-scale, massively-concurrent > system that handles large transfers of data. The "competition" POCs include > Node.js and maybe Ruby/EventMachine. The point is to see if using Java > (and/or Scala) in a hugely-scalable, highly-concurrent system can compete > with Node.js and others that seem to have more momentum in that area. I'm > convinced it can not only compete, but surpass those other platforms > considering you have all the benefits of running on the JVM, including > management/monitoring and ease of extension through plugins and other > extension points. > > If Riak was to be the data store of record for this system, then I would > absolutely need a highly-concurrent, non-blocking driver to access the data > from the REST interface, which will be Grizzy HTTP and also non-blocking. > > I'm going to clean things up a little (I've only implemented get and put > but not using the abstractions in the official driver). I think I'm going to > refactor that a little and then I'll put it on github and let everyone know. > > > Thanks! > > Jon Brisbin > http//jbrisbin.com > > > ------------------------------ > > *From: *"Mark Wolfe" <[email protected]> > *To: *"riak-users Users" <[email protected]> > *Sent: *Wednesday, June 22, 2011 3:15:09 AM > > *Subject: *Re: Riak async PB client based on Grizzly > > I have been interested in doing the same thing for a while. > > Instead of Grizzly I started messing around with Netty > https://github.com/netty/ which is very similar. > > I am not sure what either of you have found but in my experiance the NIO > stuff only really comes into it's own with large transfers or routines which > rely upon interaction with disk and network IO. For normal small transaction > rates it really doesn't add a lot aside from being a easier to manage > timeouts ect. > > If you do start up a project I would be happy to put in some hours hacking. > > Either way best of luck! > > On Wed, Jun 22, 2011 at 5:27 PM, Russell Brown <[email protected]>wrote: > >> Hey Jon, >> Any chance you want to implement the RawClient interface ( >> https://github.com/basho/riak-java-client/blob/master/src/main/java/com/basho/riak/client/raw/RawClient.java) >> from >> the basho riak-java-client library? That way your client can be swapped >> straight into the basho lib? >> >> If not, let me know when you get a repo up on github and I'll write an >> adapter so that the basho riak-java-client can make use of your Grizzly >> client, which I guess means I'll pitch in a little (time permitting) to help >> shape the Grizzly client so it is RawClient shaped. >> >> Cheers >> >> Russell >> >> On 21 Jun 2011, at 17:58, Jon Brisbin wrote: >> >> I'm trying to get my feet wet with Grizzly on another project, so I've >> been spending some late(ish) nights also working on a Grizzly-based >> asynchronous PB client for Riak. I'm dropping all the way down to the >> protobuf level and using Grizzly's NIO abstractions to implement a >> completely non-blocking client. I'm writing the low-level stuff in Java and >> I'd really like to build a Scala layer on top of this, which uses the nice >> Scala idioms (operators, case classes, etc...). But I can't write code as >> fast in Scala as I can in Java and some of the Java APIs inside Grizzly >> aren't all that Scala-friendly and make the code pretty ugly. I figured it >> would be better to implement a fairly low-level PB client in Java and flesh >> out the user-facing API in Scala and/or Java. >> >> My question is basically, if I seed this project on GitHub with what I've >> got so far, would anyone else be interested in helping complete it? I'm just >> working on this after my other Grizzly work, so I can't devote full time to >> it. It might take me a little while to implement things like links and >> mapreduce. >> >> I think it shows some real promise because it is completely non-blocking. >> It uses Futures and CompletionHandlers to do the dirty work. A Grizzly >> filter is responsible for the actual encoding/decoding of protobuf data. >> Right now, it will marshall JSON using Jackson if your content-type is set >> to "application/json", otherwise it uses JDK serialization to encode the >> entry (or just passes a String straight through, of course). >> >> Since it's a first pass, there is no real attempt to separate the protobuf >> stuff from the client. That's a v2 thing. Since I have limited time, I'm >> interested in speed to completion of features rather than good-looking and >> properly abstracted code. :) >> >> Thanks! >> >> Jon Brisbin >> http//jbrisbin.com >> >> >> _______________________________________________ >> riak-users mailing list >> [email protected] >> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com >> >> >> >> _______________________________________________ >> riak-users mailing list >> [email protected] >> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com >> >> > > > -- > Regards, > > Mark Wolfe > > -- > I am not young enough to know everything. > -- > > _______________________________________________ > riak-users mailing list > [email protected] > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com > > > -- Regards, Mark Wolfe -- I am not young enough to know everything. --
_______________________________________________ riak-users mailing list [email protected] http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
