Hacker News new | past | comments | ask | show | jobs | submit login
Nodule: A Node.js Pub-Sub Key-Value Store in 185 Lines (github.com/chriskite)
42 points by lonestar on April 13, 2010 | hide | past | favorite | 9 comments



Just for kicks, here's what the straight port of Nodule.js looks like in CoffeeScript.

http://gist.github.com/364845

A little clearer, about 25% shorter, pretty fun.


Interesting. I haven't played with CoffeeScript before, I'll have to try it out.

I stuck to straight JS since I'd like the source to be simple for most developers to understand.


Nice, good to see more people coming to Node.js. These things are like the modern "Hello, World!".

Here's one I hacked up in 10 minutes. It's 40 LOC. http://gist.github.com/366590

The big problem with this is that it's just one server. I'm working on something called "NodeRed" (har har) that lets one scale out the frontend using Redis for communication. It's generic enough to do PUBSUB, chat, games, etc.

Here's an overview. http://fictorial.com/NodeRed.png

I developed the/a Node.js client for Redis if you care to dive into this stuff: http://github.com/fictorial/redis-node-client


I just uploaded the first version of NodeRed:

http://github.com/fictorial/nodered


Redis has Pub/Sub support as well: http://code.google.com/p/redis/wiki/PublishSubscribe

And I think their APIs (limited to pub/sub) are very alike, kinda cool!


I'm working to accomplish something similar with Redis's pub/sub and Rosepad Socket.IO for handling persisting the client connection. If anyone has ideas questions or suggestions related to this strategy or these technologies I'd love to talk, email is in my profile.


I am doing something similar with my redis-node-client as a base.


i'm pretty clueless - what are some examples this could be deployed for?


It is just a form of message passing / broadcasting. Simplest example is chat. More complex example is Google Wave.




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: