mirror of
https://github.com/JasonYANG170/IOTConnect-Web.git
synced 2024-11-27 14:16:34 +00:00
51 lines
992 B
JavaScript
51 lines
992 B
JavaScript
|
const mqtt = require('../')
|
||
|
const max = 1000000
|
||
|
let i = 0
|
||
|
const start = Date.now()
|
||
|
let time
|
||
|
const buf = Buffer.allocUnsafe(10)
|
||
|
const net = require('net')
|
||
|
const server = net.createServer(handle)
|
||
|
let dest
|
||
|
|
||
|
buf.fill('test')
|
||
|
|
||
|
function handle (sock) {
|
||
|
sock.resume()
|
||
|
}
|
||
|
|
||
|
server.listen(0, () => {
|
||
|
dest = net.connect(server.address())
|
||
|
|
||
|
dest.on('connect', tickWait)
|
||
|
dest.on('drain', tickWait)
|
||
|
dest.on('finish', () => {
|
||
|
time = Date.now() - start
|
||
|
console.log('Total time', time)
|
||
|
console.log('Total packets', max)
|
||
|
console.log('Packet/s', max / time * 1000)
|
||
|
server.close()
|
||
|
})
|
||
|
})
|
||
|
|
||
|
function tickWait () {
|
||
|
// console.log('tickWait', i)
|
||
|
let res = true
|
||
|
// var toSend = new Buffer(5 + buf.length)
|
||
|
|
||
|
for (; i < max && res; i++) {
|
||
|
res = dest.write(mqtt.generate({
|
||
|
cmd: 'publish',
|
||
|
topic: 'test',
|
||
|
payload: buf
|
||
|
}))
|
||
|
// buf.copy(toSend, 5)
|
||
|
// res = dest.write(toSend, 'buffer')
|
||
|
// console.log(res)
|
||
|
}
|
||
|
|
||
|
if (i >= max) {
|
||
|
dest.end()
|
||
|
}
|
||
|
}
|