首页 文章

Azure服务总线Azure功能触发并获取所有消息

提问于
浏览
3

我有一个队列,其中放入了大量高频数据 . 我有一个azure函数,它会在新消息写入它时触发并将消息写入Azure sql数据库 . 我的问题是有太多的消息需要写,所以我想要做的就是“累积”消息,然后将它们全部写入数据库 . 我没有在Azure功能服务总线集成中看到任何类型的功能来获取所有(或x)消息并处理它们 .

这样的事情有可能吗?

任何帮助表示赞赏 .

2 回答

  • -1

    Azure Functions运行时批量检索和处理队列消息 . 默认的batchSize是16,最大的batchSize是32 ..这可以通过在Function App的host.json文件中提到batchSize来为'queue'触发器配置 . Refer to know more on host.json

    “队列”触发器的配置设置

    "queues": {
      "maxPollingInterval": 2000,
      "visibilityTimeout" : "00:00:10",
      "batchSize": 16,
      "maxDequeueCount": 5,
      "newBatchThreshold": 8
    }
    
  • 0

    我只是想知道你为什么需要批量插入 . 对于触发您的函数的每条消息,Azure都会创建一个新的函数实例;因此,性能不会成为问题 . 如果您仍想进行批处理,则可以将传入的消息临时存储在代理Azure数据库/数据存储中,并在指定的时间段内查询该代理并运行批量插入命令 . 请记住,成功批量插入后必须删除查询记录 .

相关问题