Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Very cool! Great presentation, I really like the design on the web (haven't had a chance to test it out on the ipad yet).

I've been working on the exact same idea as a minor feature for a larger webapp, although with node.js and redis.

Out of curiousity, how much are you using redis for working with images? I've found it to be great for quickly dumping objects in (hashes, strings and lists mostly), but I'm curious how much you would actually use redis in an app like this. Surely you aren't dumping entire base64 encoded string representations of a room's current image in redis, right?



We actually started with Node + redis, but when we were running load tests, we were having issues with memory consumption. I think, but I am not certain it was due to garbage collection around JSON.parse[1].

We ended up re-writing it all in erlang and it solved our problem much better. Erlang is much better suited for multicore, binary, and seemingly memory handling. Frankly, I really enjoyed writing it in erlang as well, but prototyping in Node.js worked out really well.

Regarding redis, we're actually storing the base64 string (list in erlang) as binary. This sounds crazy since we could just store the binary file, but since we'd have to encode it as base64 for all the connected clients receiving the data. This actually lowers CPU usage in the long-run. The image is only cached in redis for a period of time then flushed (or in the future persisted elsewhere) anyhow.

If you're interested in using our server for your feature, just let me know @roder and I'll contact you. Maybe we can work something out.

[1] http://news.ycombinator.com/item?id=1739995




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

Search: