【发布时间】:2022-12-20 02:48:50
【问题描述】:
我们有一个基于 Windows 的应用程序服务,需要运行大型数据集(存储在 Azure Blob 存储中的文件大约 30GB)。每个应用程序版本的数据都是静态的,因此应该可供给定插槽中的所有实例访问(在我们的例子中,一个插槽代表一个版本)。
根据我们的初步研究,持久存储 (%HOME%) 似乎是实现此目的的理想场所,因为存储在那里的数据跨实例共享,但不跨插槽共享。
现在的下一步是加载所需的数据作为我们的 devops 部署管道的一部分,因为应用程序服务无法在没有基础数据的情况下运行。但是,似乎 %HOME% 目录只能由应用服务本身访问,即使底层实现使用的是 Azure 存储。
此时,我们正在考虑让应用程序服务在其启动期间下载数据,但随后我们遇到了一个障碍,那就是我们有两个实例。我们可以实现一个 Mutex(使用 blob 租约),但在我们看来,对于一个简单的需求来说,这似乎是一个过于复杂的解决方案。
关于如何最好地实施这个的任何想法?
【问题讨论】:
标签: azure azure-devops azure-web-app-service