1

我在“azure 虚拟机”上有几个脚本,每天在某个时间运行一次,从多个 Web 服务中提取数据并将提取的数据推送到“用于 postgresql 服务器的 azure 数据库”。

我希望这些脚本从“azure function app”而不是“azure VM”运行。

目前,我在一个 blob 容器中有一个包含所有这些脚本的文件夹。

问题

  1. 是否可以从 blob 容器运行这些脚本?还是更容易下载这些脚本并通过 make 函数运行它们?或其他想法?

  2. 我应该在函数中使用什么触发器?我需要每天运行这些脚本(看起来像一个计时器触发器);这些脚本从 Web 服务获取数据(看起来像一个 http 触发器)。但是可以对一个函数doc使用一个触发器。此外,计时器触发器没有输入/输出文档

  3. 我是否理解正确,在我的情况下,我从 Web 服务检索的数据应该是我的 azure 函数的“输入数据”,当我将它放入 postgresql 数据库时,它应该是同一个 azure 的“输出数据”功能?

我是 Azure 的新手,并尝试了解函数应用程序背后的所有逻辑。所以,欢迎任何帮助!

4

1 回答 1

1

考虑到这些脚本需要在一天中的特定时间运行,您可能希望使用Timer Trigger Azure Functions. 这将确保您的函数在预定时间调用。

由于脚本存储在 blob 存储中,因此您在函数代码中要做的第一件事就是从 blob 存储本地下载这些脚本。您可以使用任何可用Blob Storage SDK的方法来做到这一点。例如,这里是使用 Blob Storage SDK for Python 的链接:https ://docs.microsoft.com/en-us/azure/storage/blobs/storage-quickstart-blobs-python 。

将脚本下载到本地后,您应该能够执行这些脚本。

请记住,每个 Azure 函数最多只能运行一定的时间(即它不能无限期地运行),因此您可能需要确保脚本执行在该时间内完成。

于 2022-02-21T18:17:46.070 回答