'use strict' ;
const benchmark = require('benchmark' );
const crypto = require('crypto' );
const Sender = require('../' ).Sender;
const data1 = crypto.randomBytes(64);
const data2 = crypto.randomBytes(16 * 1024);
const data3 = crypto.randomBytes(64 * 1024);
const data4 = crypto.randomBytes(200 * 1024);
const data5 = crypto.randomBytes(1024 * 1024);
const opts1 = {
readOnly: false ,
mask: false ,
rsv1: false ,
opcode: 2,
fin: true
};
const opts2 = {
readOnly: true ,
rsv1: false ,
mask: true ,
opcode: 2,
fin: true
};
const suite = new benchmark.Suite();
suite.add('frame, unmasked (64 B)' , () => Sender.frame(data1, opts1));
suite.add('frame, masked (64 B)' , () => Sender.frame(data1, opts2));
suite.add('frame, unmasked (16 KiB)' , () => Sender.frame(data2, opts1));
suite.add('frame, masked (16 KiB)' , () => Sender.frame(data2, opts2));
suite.add('frame, unmasked (64 KiB)' , () => Sender.frame(data3, opts1));
suite.add('frame, masked (64 KiB)' , () => Sender.frame(data3, opts2));
suite.add('frame, unmasked (200 KiB)' , () => Sender.frame(data4, opts1));
suite.add('frame, masked (200 KiB)' , () => Sender.frame(data4, opts2));
suite.add('frame, unmasked (1 MiB)' , () => Sender.frame(data5, opts1));
suite.add('frame, masked (1 MiB)' , () => Sender.frame(data5, opts2));
suite.on('cycle' , (e) => console.log(e.target.toString()));
if (require.main === module) {
suite.run({ async: true });
} else {
module.exports = suite;
}
quality 98%
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet)
¤
*© Formatika GbR, Deutschland