1 var msgpack = require('node-msgpack');
2 var bison = require('bison');
5 encode: JSON.stringify,
10 decode: msgpack.unpack
18 for (var i = 0; i < 12; ++i) s += s;
22 arrrrrr: [{a:1,b:false,c:null,d:1.0}, 1111, 2222, 33333333],
28 for (i = 0; i < 100; ++i) obj.rand.push(Math.random());
33 arrrrrr: [{a:1,b:false,c:null,d:1.0}, 1111, 2222, 33333333],
36 for (i = 0; i < 100; ++i) obj.rand.push(Math.random());
41 arrrrrr: [{a:1,b:false,c:null,d:1.0}, 1111, 2222, 33333333],
47 arrrrrr: [{a:1,b:false,c:null,d:1.0}, 1111, 2222, 33333333],
52 function run(obj, codec) {
55 for (var i = 0; i < n; ++i) {
56 codec.decode(l = codec.encode(obj));
59 //console.log('DONE', n*1000/(t2-t1), 'codecs/sec, length=', l.length);
60 return [n*1000/(t2-t1), l.length];
63 function series(obj, cname, n) {
66 for (var i = 0; i < n; ++i) {
67 var r = run(obj, codec[cname]);
73 console.log(cname + ' ' + rate + ' ' + len);
77 function forObj(obj) {
79 JSON: series(obj, 'JSON', 20),
80 msgpack: series(obj, 'msgpack', 20),
81 bison: series(obj, 'bison', 20)