当前位置: 首页 > 知识库问答 >
问题:

Azure Blob有时会触发,触发时间过长

阮桐
2023-03-14

我正在使用应用服务计划进行 azure 函数,并添加了 blob 触发器,但是当任何文件上传到 blob 容器时,函数没有触发.或者有时它花了太多时间,然后在它开始触发之后。任何建议将不胜感激

它应该在新文件上传到 Blob 容器时触发该函数。

共有2个答案

胡翔
2023-03-14

由于您说您已经在应用服务计划上运行这些功能,因此您可能没有启用始终开启设置。您可以从应用程序设置-

另一个可能的原因是,如果在处理容器后未将 Blob 从容器中清除。

从这里:

如果被监视的blob容器包含超过10,000个blob(跨所有容器),函数运行时将扫描日志文件,以监视新的或已更改的blob。这个过程可能会导致延迟。在blob创建后的几分钟或更长时间内,函数可能不会被触发。

当使用消费计划时,这里还有一个关于潜在延迟的链接警告。

壤驷深
2023-03-14

这应该是冷启动的情况

根据此处的注释

当您在消费计划中使用blob触发器时,处理新的blob可能会延迟10分钟。此延迟发生在功能应用程序空闲时。函数应用程序运行后,将立即处理blob。要避免这种冷启动延迟,请使用始终启用的应用程序服务计划,或使用事件网格触发器。

对于您的情况,您需要考虑Event-Grid触发器而不是Blob触发器,Event触发器也内置了对blob-event的支持。

 类似资料:
  • 问题内容: 我的整个项目都使用(Bluebird)Promises,但是有一个使用EventEmitter的特定库。 我想要实现以下目标: 我在Promises链中读了EventEmitter的答案。这给了我一种执行’connect’事件的回调的方法。这是我到目前为止所到之处 现在如何进一步链接“ eventB”? 问题答案: 我假设您想为每个事件做不同的事情。即使由的动作触发,您也可以将其视为另

  • 更新时间:2019-05-29 22:40:39 节点简介 定时触发节点可以按照制定时间执行服务,在一个服务中有且只有一个定时触发节点。与设备触发节点和Http请求节点不能同时存在。 使用场景 如果你需要按照某次时间、或每天指定时间去执行某个服务操作的时候就可以使用定时触发节点。常用于消息定时推送、任务定时执行、定时提醒、定时触发设备等场景。 配置项 触发模式 触发模式可以选择两种: 1.特定时间

  • 我在Azure上有一个函数,包含以下function.json文件: 除非我错了,否则这个函数应该每天运行一次,在凌晨3点? 这是函数的签名: 我到底做错了什么?当我手动触发(在门户中单击“运行”)时,该功能工作正常,但它在今天凌晨3点没有运行,昨天也没有运行。 编辑:所以,正如建议的那样,我已经将计划更改为付费计划,并且我选择了一个动态计划。日志仍然没有说明功能在今天早上3点被激活。

  • 我们有一个quartz应用程序可以在其他环境中很好地工作。 触发器表也显示它从未被激发。 NEXT_FIRE_TIME PREV_FIRE_TIME优先级TRIGGER_STATE TRIGGER_TYPE START_TIME END_TIME CALENDAR_NAME MISFIRE_INSTR 1405630189133-1 5等待CRON 1405624813000 0 140 5630

  • 我的sonarQube覆盖测试检测到该代码的捕获块在测试期间从未到达 代码: 我的静态函数ConvertFileToByte()可以抛出一个IOExctive。 相关测试: 我认为问题来自这样一个事实,即“thenThrow”函数是在执行之后完成的,因此永远不会到达catch块。我试图将调用返回与分配分开,但它从未在测试中触发catch函数,并根据sonar添加代码气味。 有什么想法和建议让这个测

  • 当我使用 flink 事件时间窗口时,窗口只是不触发。如何解决问题,有没有办法调试?