【问题标题】:Is there equivalent of SQLdependency in AzureSQL?Azure SQL 中是否存在等效的 SQL 依赖项?
【发布时间】:2018-05-31 08:06:49
【问题描述】:

我有两个应用程序。一个插入 AzureSQL DB 和其他读取。我希望第二个应用程序缓存查询结果并仅在表/查询结果发生更改时才使缓存无效。在独立的 SQL Server 中,可以通过 SQLDependency(或 SQLCacheDependency)机制实现。据我了解,在 AzureSQL 中这种机制是不可用的。需要开启ServiceBroker组件,Azure SQL中没有这个组件。

如果我重复已经提出的问题,我会道歉,但所有答案都来自 2012 年左右。有什么变化吗?现在是 2017 年。

问题是,通知应用程序(例如,ASP.NET)有关 AzureSQL 更改的机制是什么?

PS:我知道有相关功能“ChangesTracking”,但它是关于在特殊表中插入有关其他一些更改的记录。那是“内部”数据库。我需要通知数据库之外的应用程序。

【问题讨论】:

  • 问题要求我们推荐或查找书籍、工具、软件库、教程或其他非现场资源Stack Overflow 的主题,因为它们往往会吸引有意见的答案和垃圾邮件。相反,请描述问题以及迄今为止为解决该问题所做的工作
  • 我描述了这个问题。我来这里是因为我做了功课,不幸的是,它没有成功。这就是我来这里的原因——问问题。不报告我的搜索。同样,问题是 AzureSQL 不支持 SQLServer 中存在的功能。
  • @astaykov,我完全可以接受可选的答案。你说你写的一切都是自以为是的:“我在这里或任何地方写的一切,都是我个人的观点,基于我个人的主观观点和经验”。我会接受任何帮助。你是 Azure 专家,请帮忙。

标签: sql-server azure caching azure-sql-database


【解决方案1】:

据我了解,SQLDependency 使用 DependencyListener 工作,它是 RepositoryListener 的实现并在 ServiceBroker 上中继,正如您所说的 AzureSQL 不支持 ServiceBroker。但是您可以使用 RepositoryListener 的 PollingListener 实现来验证更改。

“PollingListener 将一直运行直到被取消,并将简单地将查询结果与查询结果进行比较,直到检测到更改。一旦检测到,将调用回调方法”

(Source1) (Source 2)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多