Comparing encode/decode performance of MsgPack Node.js implementations against JSON.
var msgpack = require('msgpack-js'); | |
var msgpack2 = require('msgpack2'); | |
var os = require('os'); | |
console.log(" OS: " + os.type() + " " + os.release() + " (" + os.arch() + ")"); | |
console.log("RAM: " + os.totalmem()/1048576 + " MB (total), " + os.freemem()/1048576 + " MB (free)"); | |
console.log("CPU: " + os.cpus()[0].speed + " MHz " + os.cpus()[0].model); | |
for(var r = 1; r < 4; r++) { | |
console.log("\nRun #" + r + ":"); | |
var obj = {'abcdef' : 1, 'qqq' : 13, '19' : [1, 2, 3, 4]}; | |
var start = Date.now(); | |
for(var i = 0; i < 500000; i++) { | |
JSON.parse(JSON.stringify(obj)); | |
} | |
var stop = Date.now(); | |
console.log("\t JSON: " + (stop - start) + "ms"); | |
start = Date.now(); | |
for(var i = 0; i < 500000; i++) { | |
msgpack.decode(msgpack.encode(obj)); | |
} | |
stop = Date.now(); | |
console.log("\tMsgPack JS: " + (stop - start) + "ms"); | |
start = Date.now(); | |
for(var i = 0; i < 500000; i++) { | |
msgpack2.unpack(msgpack2.pack(obj)); | |
} | |
stop = Date.now(); | |
console.log("\tMsgPack 2: " + (stop - start) + "ms"); | |
} |
This comment has been minimized.
This comment has been minimized.
25 seconds? What the fuck!? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
Comparing Node.JS's JSON vs
json_sans_eval.js
, minified and unminified.