Company
Date Published
July 19, 2016
Author
Jan Hecking
Word count
1336
Language
English
Hacker News points
None

Summary

The Aerospike Node.js client's performance was significantly improved in version 2 with a switch to asynchronous, non-blocking I/O and adoption of error-first callback semantics. However, late in the development cycle, significant performance degradation was noticed due to the use of variable-length argument lists in the new callback handler function. After several iterations, a 34x gain in callback handling performance was achieved by using static function arguments instead of the special arguments object. This optimization was included in the first patch release v2.0.1.