如何使用setInterval从zmq套接字发布随机消息?

时间:2016-09-30 10:06:19

标签: node.js setinterval simulation zeromq

编写以下代码来模拟zmq套接字以发送硬编码的myData。 如何使setInterval函数同时发送myData& myData2随机?这将帮助我模拟来自多个来源的消息(例如:servicesIOT devices)由同一个套接字实例发布

var zmq = require('zmq');
var socket = zmq.socket('pub');

//simulated message
var myData = {
  "vmId" :  "abc",
  "vmName" : "myVm"
}
var myData2 = {
  "vmId" :  "xyz",
  "vmName" : "myVm_2"
}
socket.bindSync('tcp://localhost:3000');

setInterval(function(){
 socket.send(['notify_message', JSON.stringify(myData)]);
}, 1000);

1 个答案:

答案 0 :(得分:1)

使用Math.random()

setInterval(function() {
  socket.send(['notify_message', 
   JSON.stringify(Math.random() < 0.5 ? myData : myData2)]);
}, 1000);