Riak PB Client for Node.js

2013-06-03 Thread Pedro Teixeira

Riak-pb (https://github.com/CrowdProcess/riak-pb) is a Riak Node.js client 
module that uses Protocol Buffers (instead of HTTP) to talk to Riak. It has the 
following features:

Automatically reconnects if disconnected
Can be configured with an array of nodes, load-balancing between them
Uses connection pooling, using many connections in parallel to speed up 
concurrent requests
Automatically retries if client gets disconnected during request
Provides a streaming interface for when Riak uses streaming replies


Riak-pb is entirely written in JavaScript, using protobuf.js 
(https://npmjs.org/package/protobuf.js) to encode and decode protocol buffers.


(Because it makes use of Streams2, Riak-pb is only compatible with Node.js >= 
0.10).


Enjoy!


-Pedro

___
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com


Re: Riak PB Client for Node.js

2013-06-04 Thread Pedro Teixeira

Hi Mark,






CrowdProcess is a web-based browser-powered distributed computing platform.

We harvest computing power from the browsers of the viewers of our partner 
websites and make them available to our users and clients so they can do all 
kinds of awesome stuff: forest fire behavioral prediction, cancer therapy 
research, genome sequencing, etc. On top of that we want to be an alternative 
revenue source for websites by sharing our revenue in proportion to the 
processing power they're visitors allow them to provide

Customer computational data can be very volumous and by using Riak we can 
efficiently scale out our data store without incurring in service down time. 
Given the nature of some of the computational tasks we handle, having the high 
availability that Riak gives us at the data store layer is a big advantage. 
Also, by tuning the Riak CAP controls, we can adjust the consistency and 
performance trade-offs according to our application needs.

-- 
Pedro


On Tuesday, June 4, 2013 at 12:46 AM, Mark Phillips wrote:

> Hey Pedro, 
> 
> Thanks for passing this along. I just opened a PR [0] to add it to the Riak 
> Docs (along with the code Troy Malhese just released [1]).
> 
> Which reminds me -  if anyone else has code that should be on the community 
> projects page, don't hesitate to add it. 
> 
> At the risk of taking this totally off-topic, can you talk a bit about how 
> CrowdProcess is using the client/Riak? "We're turning the internet into a 
> super computer" sounds pretty ambitious. I'm mostly curious how Riak plays 
> into that. :)  
> 
> Mark 
> 
> 
> [0] https://github.com/basho/basho_docs/pull/418
> [1] https://github.com/natural/zukai
> 
> 
> On Mon, Jun 3, 2013 at 1:29 AM, Pedro Teixeira  (mailto:pedro.teixe...@gmail.com)> wrote:
> > 
> > Riak-pb (https://github.com/CrowdProcess/riak-pb) is a Riak Node.js client 
> > module that uses Protocol Buffers (instead of HTTP) to talk to Riak. It has 
> > the following features:
> > 
> > Automatically reconnects if disconnected
> > Can be configured with an array of nodes, load-balancing between them
> > Uses connection pooling, using many connections in parallel to speed up 
> > concurrent requests
> > Automatically retries if client gets disconnected during request
> > Provides a streaming interface for when Riak uses streaming replies
> > 
> > 
> > Riak-pb is entirely written in JavaScript, using protobuf.js 
> > (https://npmjs.org/package/protobuf.js) to encode and decode protocol 
> > buffers.
> > 
> > 
> > (Because it makes use of Streams2, Riak-pb is only compatible with Node.js 
> > >= 0.10).
> > 
> > 
> > Enjoy!
> > 
> > 
> > -Pedro
> > 
> > 
> > ___
> > riak-users mailing list
> > riak-users@lists.basho.com (mailto:riak-users@lists.basho.com)
> > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
> > 
> 

___
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com


[ANN] JavaScript Riak REPL

2013-06-05 Thread Pedro Teixeira
Hi,

Just published a Node.js-based JavaScript REPL for talking to Riak:

https://github.com/CrowdProcess/riak-repl#readme

It's a fairly recent small project, but I think this is a missing tool if you 
use Riak.
Still some improvements to do, but it should be fully operational.

(riak-repl uses riak-pb (https://github.com/CrowdProcess/riak-pb) underneath, 
which uses protocol buffers to talk to Riak). 

Enjoy!

-- 
Pedro


On Tuesday, June 4, 2013 at 10:47 AM, Pedro Teixeira wrote:

> 
> Hi Mark,
> 
> 
> 
> 
> 
> 
> CrowdProcess is a web-based browser-powered distributed computing platform.
> 
> We harvest computing power from the browsers of the viewers of our partner 
> websites and make them available to our users and clients so they can do all 
> kinds of awesome stuff: forest fire behavioral prediction, cancer therapy 
> research, genome sequencing, etc. On top of that we want to be an alternative 
> revenue source for websites by sharing our revenue in proportion to the 
> processing power they're visitors allow them to provide
> 
> Customer computational data can be very volumous and by using Riak we can 
> efficiently scale out our data store without incurring in service down time. 
> Given the nature of some of the computational tasks we handle, having the 
> high availability that Riak gives us at the data store layer is a big 
> advantage. Also, by tuning the Riak CAP controls, we can adjust the 
> consistency and performance trade-offs according to our application needs.
> 
> -- 
> Pedro
> 
> 
> On Tuesday, June 4, 2013 at 12:46 AM, Mark Phillips wrote:
> 
> > Hey Pedro, 
> > 
> > Thanks for passing this along. I just opened a PR [0] to add it to the Riak 
> > Docs (along with the code Troy Malhese just released [1]).
> > 
> > Which reminds me -  if anyone else has code that should be on the community 
> > projects page, don't hesitate to add it. 
> > 
> > At the risk of taking this totally off-topic, can you talk a bit about how 
> > CrowdProcess is using the client/Riak? "We're turning the internet into a 
> > super computer" sounds pretty ambitious. I'm mostly curious how Riak plays 
> > into that. :)  
> > 
> > Mark 
> > 
> > 
> > [0] https://github.com/basho/basho_docs/pull/418
> > [1] https://github.com/natural/zukai
> > 
> > 
> > On Mon, Jun 3, 2013 at 1:29 AM, Pedro Teixeira  > (mailto:pedro.teixe...@gmail.com)> wrote:
> > > 
> > > Riak-pb (https://github.com/CrowdProcess/riak-pb) is a Riak Node.js 
> > > client module that uses Protocol Buffers (instead of HTTP) to talk to 
> > > Riak. It has the following features:
> > > 
> > > Automatically reconnects if disconnected
> > > Can be configured with an array of nodes, load-balancing between them
> > > Uses connection pooling, using many connections in parallel to speed up 
> > > concurrent requests
> > > Automatically retries if client gets disconnected during request
> > > Provides a streaming interface for when Riak uses streaming replies
> > > 
> > > 
> > > Riak-pb is entirely written in JavaScript, using protobuf.js 
> > > (https://npmjs.org/package/protobuf.js) to encode and decode protocol 
> > > buffers.
> > > 
> > > 
> > > (Because it makes use of Streams2, Riak-pb is only compatible with 
> > > Node.js >= 0.10).
> > > 
> > > 
> > > Enjoy!
> > > 
> > > 
> > > -Pedro
> > > 
> > > 
> > > ___
> > > riak-users mailing list
> > > riak-users@lists.basho.com (mailto:riak-users@lists.basho.com)
> > > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
> > > 
> > 
> 

___
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com