我目前正在开发一个项目,我们将用一些新的花哨的Azure东西替换旧的遗留软件:-)简而言之:
我在内部创建新文件时设法触发但由于每批事务数据都非常大,我很难通过使用Postman(POST命令)将其发送到我的Azure函数来测试它。邮递员抱怨缓冲区太大而无法发送:-(
我用较小的批次测试了它,我可以看到Azure功能完成它应该做的事情。
我的下一个想法是,不是将批处理发送到我的函数,而是可以发送文件名,让我的函数只读取文件中的批处理。但是:如何通过我的内部部署数据网关从Azure上的功能访问本地创建的文件?
在我的逻辑应用程序中,我得到文件名,本地文件的文件名....如何从我的Azure功能访问该本地文件?
我考虑的另一个解决方案是使用逻辑应用程序将On-Premise文件复制到Azure文件存储区域上的临时文件,然后从那里继续处理,但感觉就像“一步太多”。
还有其他更好的解决方案?
我会把你的问题分成两部分。第一个是将文件提供给Azure,第二个是处理您的需要。
对于(1),请查看使用Azure Data Factory(v2)和Integration Runtime(IR)。 IR允许您安全地访问您的本地数据(包括文件)。如果集成运行时对于您的用例看起来有点过分,那么请查看使用命令行工具AzCopy。目标是将文件在内部创建时移动到Azure存储帐户。然后,当您在Azure存储中创建文件时,您的逻辑应用程序可以在trigger上执行操作。
对于(2),您的Azure功能可以执行您需要的相关处理。请记住,耗材计划上的Azure功能运行时间不能超过10分钟(默认配置为5分钟)。