【发布时间】:2012-09-08 07:20:13
【问题描述】:
我正在使用这段代码从使用 web 矩阵在本地运行的 node.js 服务器调用服务总线队列,我还上传到 windows azure“网站”,但它仍然执行缓慢。
var sb1 = azure.createServiceBusService(config.serviceBusNamespace, config.serviceBusAccessKey);
sbMessage = {
"Entity": {
"SerialNumbersToCreate": '0',
"SerialNumberSize": config.usageRates[3],
"BlobName": 'snvideos' + channel.ChannelTableName,
"TableName": 'snvideos' + channel.ChannelTableName
}
};
sb1.getQueue('serialnumbers', function(error, queue){
if (error === null){
sb1.sendQueueMessage('serialnumbers', JSON.stringify(sbMessage), function(error) {
if (!error)
res.send(req.query.callback + '({data: ' + JSON.stringify({ success: true, video: newVideo }) + '});');
else
res.send(req.query.callback + '({data: ' + JSON.stringify({ success: false }) + '});');
});
}
else res.send(req.query.callback + '({data: ' + JSON.stringify({ success: false }) + '});');
});
在服务器将返回结果返回给客户端之前,最长可能需要 5 秒。当我注释掉 sb1.getQueue('serialnumbers', function(error, queue){ 并让它返回而不发送队列消息时,它会在不到 1 秒的时间内执行。为什么会这样?我使用 azure sdk 的方法是服务总线正确吗?
任何帮助将不胜感激。
【问题讨论】: