问题标签 [azure-function-async]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
328 浏览

c# - 使用 SQL 客户端将时间触发的 Azure 函数与数据库连接

我正在使用 SQL 客户端将时间触发的 Azure 函数与 SQL Server 连接,但我没有得到任何数据。

这是我的代码:

local.settings.json

Function1.cs

我不明白它有什么问题。请建议

0 投票
1 回答
122 浏览

azure-functions - Azure 函数取消令牌不起作用

我想在向程序发送取消时清理资源(例如删除订阅)(例如,在本地运行或停止程序时按 ctrl+c)

但是,取消令牌似乎不起作用,没有记录任何内容。

下面是我的代码:

我正在通过视觉工作室在本地对其进行测试。我在终端启动后将 ctrl+c 发送到终端,但未记录“停止计时器功能”,并且仅Exception thrown: 'System.Threading.Tasks.TaskCanceledException' in System.Private.CoreLib.dll在程序结束时(即SendHttpReq完成时)在 Visual Studio 的输出框中看到。 在此处输入图像描述

CancellationToken 是在函数运行时触发还是可以随时触发?

如何在关闭前通过清理其他资源来优雅地关闭功能?或者有什么方法可以收听主机关机。

谢谢!

0 投票
1 回答
159 浏览

azure-functions - Azure 函数应用级别是否有任何关闭事件?

我想在完全关闭 Azure 函数应用程序之前对资源进行一些清理(例如删除订阅)。

是否有任何提供商可以监听 Azure 函数应用主机的关闭事件?我只能找到依赖注入的启动文件。

0 投票
1 回答
173 浏览

azure-functions - 如何获取非 FIFO 顺序的 Azure 服务总线队列消息?

我有以下 Http 触发 Azure 函数将数据发送到队列中。但是如何才能看到 Azure Service Bus 不保证 FIFO 顺序的行为呢?

我正在使用偷看锁接收行为。假设我在队列中有消息 1、2、3、4。如果我的应用程序在收到消息 1 时失败,Azure Function 由于其并发性如何反应?当消息 1 超时时,是否会有另一个线程读取消息 2?

提前致谢!

0 投票
1 回答
51 浏览

azure - 两个 Azure Functions 共享一个 In-Proc 集合

我有两个 Azure 函数。我可以将它们视为“生产者-消费者”。一种是基于“HttpTrigger”的函数(生产者),可以随机触发。它将输入数据写入静态“ConcurrentDictionary”。第二个是“定时器触发器”Azure Function(consumer)。它定期从“Producer”函数App使用的同一个“ConcurrentDictionary”中读取数据,然后进行一些处理。

这两个功能都在同一个 .Net 项目中(但在不同的类中)。当我在本地运行应用程序时,通过静态“ConcurrentDictionary”进行的内存数据共享工作得非常好。在本地运行时,我假设它们在同一进程下运行。但是,当我在 Azure 门户中部署这些函数时(它们在同一个函数 App 资源中),我发现通过静态“ConcurrentDictionary”进行数据共享不起作用。

我只是想知道,如果在 Azure 门户中,这两个函数都有自己的进程(可能这就是他们无法共享进程内静态集合的原因)。如果是这种情况,我有什么选择让这两个功能作为正确的“生产者-消费者”工作?将两个函数保持在同一个类中会有帮助吗?

可能情况与帖子中描述的相反 - “https://stackoverflow.com/questions/62203987/do-azure-function-from-same-app-service-run-in-same-instance” . 与帖子中的问题相反,我希望两个函数都使用静态类实例的相同静态成员。

很抱歉我不能做太多实验,因为部署是通过 Azure-DevOps 管道完成的。存储库中签入过多有点不方便。正如我所提到的,它在本地运行良好。所以,我不知道如何在本地环境中重新创建 Azure 门户中发生的事情,以便我可以尝试不同的选项?有没有我想申请的可配置的东西?

0 投票
0 回答
73 浏览

azure-functions - Azure Logic 应用在调用 HTTP Webhook 后无法继续工作

我正在尝试创建以下工作流程: 在此处输入图像描述

这个流程每个月都会午餐。逻辑应用将使用 HTTP Webhook 调用 Orchestrator Azure 函数。此 Orchestrator Azure 函数将调用另外两个 Azure 函数。

我正在使用 Azure Orchestrator 函数,因为另外两个 azure 函数需要很长时间才能执行,在这种情况下,我们谈论的是持久函数,否则如果逻辑应用程序在一段时间后没有收到响应(经过一段时间也重试)它将以错误结束。因此,编排器将通过发送 202 响应来解决此问题,并使逻辑应用程序等待 azure 函数结束它们才能工作(https://docs.microsoft.com/en-us/azure/azure-functions/durable/quickstart-python -vscode)。下图显示我正在调用 Orchestrator: 在此处输入图像描述

在收到来自 HTTP Webhook 的 200 状态,表明 azure 函数成功完成工作后,它将进入下一步调用 Azure 管道,然后我们将发送有关 devops 管道状态的电子邮件(如果它以成功或失败结束)。

所以这就是我在做什么的描述。

我的问题是逻辑应用程序在 HTTP Webhook 的调用中被阻止。我已经检查了 azure 函数并且它们运行良好,并且我已经通过检查日志检查了那里的输出并且它们以成功结束。

我不知道问题出在哪里。

这是azure Orchestrator Function Starter的代码:

这是调用 Azure 函数的 Orchestrator 代码:

我已经尝试过操纵 HTTP Webhook 的参数(超时持续时间和重试次数以及重试次数),但总是同样的问题。

任何人都可以提出任何可以帮助解决问题的主张吗?提前谢谢你们

0 投票
0 回答
10 浏览

java - CosmosDB Java SDK 中的分页与延续令牌

我正在尝试从异步客户端创建一种从 CosmosDB 检索项目的方法,但恐怕我充满了问题,而且微软方面几乎没有文档

我创建了一个函数,该函数将从 cosmosDB 中逐页读取项目列表,其延续将取决于连续性令牌。方法看起来像这样。请注意,可能存在一些与逐页阅读的核心功能无关的小错误:

为简单起见,仅记录读取的项目。

第一个问题:我们正在使用一个返回 Flux 的异步文档客户端。客户端会跟踪令牌吗?原则上它是一个无国籍的客户。我知道同步客户端可以轻松处理这种情况,但是异步客户端不会在生成第一页和令牌后重置其令牌内存吗?

第二:while 循环是否适当?我的假设是否定的,因为我们需要在标头中发回令牌,而前端 UI 需要以标头或其他类似方式将令牌发送到 Azure 函数。然后应该从上下文中提取令牌

第三:flatMap和blockList方式读取通量合适吗?我试图使用 subscribe 方法,但我再次看不到它如何适用于异步客户端。

非常感谢,亚历克斯。