Making node.js operational — robustness

Apart from the new features added, I also carefully reviewed the performance aspects, and did some enhancements for the sake of robustness. One observation from the real production application was that, GC would become a problem, sooner or later, and when it comes, it comes badly. I tried using –nouse-idle-notification and mitigated the problem noticeably,…

Making Node.js operational

It occurs to me that much as the node.js community and the usage grow, lots of java or other developers still figure it as premature and reject it for enterprise applications. To some extent, I found their conservation reasonable, and the major reason for that could be the operational gap. A fundamentally different architecture requires…

A BitSet for Node.js more like java.util.BitSet

https://github.com/inexplicable/ql.io/blob/master/modules/context-config/bitset.js I tried https://github.com/tdegrunt/bitset, it’s a nice CoffeeScript implementation, but there’re a few things I don’t get, for one, its position starts from 1, not 0. If that could be overcomed, there’s the poor #cardinality implementation, which really iterates every bit to sum it up. The last straw was the fact that #nextSetBit was completely missing.…

Turning Bitcask into a Caching Solution Contd.

Before I start listing the various amazing speed boosts tricks, I’d better give some numbers: Windows 7, 16 cores, 8g RAM, HDD key size: 16 bytes (“0000000000000001” etc.) value size: 100 bytes entries: 10M We used LevelDB’s benchmark testing (right at my hand), and tested major scenarios like “fillSeq”, “fillRandom”, “overwrite”, “randSeq”, “readRandom” etc. And…

Turning Bitcask into a Caching solution

Haven’t updated the blog for a while as sth interesting has kept me busy. We were trying to find or create a better caching solution for application development that would be: fast, large and simple. Whether or not you’ve used Riak, or know about Erlang language, Bitcask is sth you might appreciate as a candidate…