azure - 向 wazure 网络农场中的所有服务器发送消息
问题描述
我有许多在 Azure 中运行的 Asp.Net Core 2.x AppService WebApp 实例。它们都将数据对象的副本保存在本地内存缓存中。
假设在这种情况下分布式缓存不可行。因此,我正在寻找一种机制来向所有相关实例发送消息/信号,以刷新它们在本地缓存中的内存对象。
我可以调用一个休息端点来刷新本地内存缓存,但我不确定是否有一种方法可以将调用处理定向到特定实例。这可能吗?如果没有,是否有办法让场中的每个实例都知道是时候让它们的缓存过期了?
解决方案
首先,Azure 应用服务内容存储在 Azure 存储中,并以持久的方式作为内容共享出现,并且内容在应用的多个虚拟机 (VM) 实例之间共享。
本地缓存功能能否满足您的要求: - Azure 应用服务本地缓存功能提供内容的 Web 角色视图。此内容是在现场启动时异步创建的存储内容的写入但丢弃缓存。缓存准备好后,站点将切换为针对缓存的内容运行您的网站的文件并配置在触发这些触发器时要执行的操作。如果您的网站有多个实例,它只会记录触发此触发器的实例的事件,而不是所有实例。请查看此博客 了解详细信息。
作为旁注,在 Azure 门户中,导航到诊断和解决问题下的 Azure Web 应用程序,搜索 -Advanced Application Restart-,您将获得一个选项,允许您只选择所需的实例。请让我知道这是否有帮助或您需要进一步的帮助。
推荐阅读
- html - 不知道为什么这两个 div 重叠?
- python - 在 python 中编辑文本文件并创建一个新文件
- c++ - c++:如何在 sprintf 连接中插入换行符?
- php - SwaggerUI 不为参数生成名称属性
- java - 我可以使用 Java 在另一个枚举中添加枚举吗?
- google-sheets - 与不同的工作表相比,突出显示具有唯一值的行
- sml - SMLNJ:运算符和操作数不同意 [tycon mismtach] - 用于列表分配
- java - Java socket/JavaFX - 发送 mssgs 使客户端停止工作
- javascript - 如何优化此同步“模糊搜索”功能并将其转换为异步功能?
- python - 如何有效地找到二维矩阵中多个元素的行索引?