我在“azure虚拟机”上有几个脚本,每天在特定时间运行一次,从多个Web服务中提取数据并将提取的数据推送到“azure数据库用于postgresql服务器”。
我希望这些脚本从“azure function app”而不是“azure VM”运行。
目前,我在 blob 容器中有一个包含所有这些脚本的文件夹。
问题:
是否可以从 blob 容器运行这些脚本?或者下载这些脚本并通过 made 函数运行它们是否更容易?或者其他想法?
我应该在函数中使用什么触发器?我需要每天运行这些脚本(看起来像计时器触发器);这些脚本从 Web 服务获取数据(看起来像 http 触发器)。但可以为一项功能使用一个触发器 doc 。而且,定时器触发器没有输入/输出doc .
我是否正确理解,在我的情况下,我从 Web 服务检索的数据应该是我的 azure 函数的“输入数据”,当我将其放入 postgresql 数据库时,它应该是“输出”相同的 azure 函数的数据”?
我是 Azure 的新手,尝试了解函数应用背后的所有逻辑。因此,欢迎任何帮助!
最佳答案
考虑到这些脚本需要在一天中的特定时间运行,您可能需要使用 Timer Trigger Azure Functions
。这将确保您的函数在预定时间调用。
由于脚本存储在 Blob 存储中,因此您在函数代码中要做的第一件事就是从 Blob 存储本地下载这些脚本。您可以使用任何可用的 Blob Storage SDK
来执行此操作。例如,以下是使用适用于 Python 的 Blob Storage SDK 的链接:https://learn.microsoft.com/en-us/azure/storage/blobs/storage-quickstart-blobs-python .
将脚本下载到本地后,您应该能够执行这些脚本。
请记住,每个 Azure 函数最多只能运行一定的时间(即它不能无限期地运行),因此您可能需要确保脚本执行在该时间内完成。
关于python - 将脚本从 Azure 虚拟机移动到 Azure Function App,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71210837/