问题标签 [cache-dependency]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - 为 ravendb 中的文档创建自定义缓存依赖项
我正在尝试创建缓存依赖项以使我正在使用 ASP.NET 缓存缓存的一些文档过期。我想出了这个:
这是一个好主意性能明智还是我应该使用“ForDocumentsStartingWith”/“ForAllDocuments”。或者我应该创建一个索引。答案可能取决于被缓存的文档数量,所以我想我要问的是,当我注册数百个更改侦听器时,RavenDB 是否会为我优化任何东西,或者客户端是否会实际设置数百个连接以这种方式使用数据库。
c# - 时间:2019-04-10 标签:c#cachedependencydisposepattern
我正在将缓存依赖对象添加到此类 AggregateCacheDependency 的数组中。当我完成数组时,我会处理它。我的问题是我必须只处理包含对象的数组还是必须先处理它们自己的对象?
c# - 致命:System.Web.HttpException(0x80070057):文件监控的文件名无效:''
我收到以下问题:
FATAL: System.Web.HttpException (0x80070057): Invalid file name for file monitoring: ''.
失败的常见原因包括: - 文件名不是有效的 Win32 文件名。- 文件名不是绝对路径。- 文件名包含通配符。- 指定的文件是一个目录。- 拒绝访问。
我的代码:
为什么即使我将参数传递为“null”,它也会检查缓存依赖文件???
yii2 - yii2 替换 yii 1.x 的依赖
我想将 yii 1.x 的依赖替换为 yii 2.x。我正在使用依赖关系如下:
asp.net-mvc - 每当编译器通过 VirtualPathProvider 重新编译我的剃刀视图时,我如何放置日志?
我在这里遇到了一点性能问题:下面的代码是我的自定义 VirtualPathProvider 的一部分,我已经覆盖了 GetCacheKey 和 GetCacheDependency,因此它们可以正确地缓存我的剃刀视图。
但是目前我有点担心我的代码是否正确 - 因为当我在本地 PC 上测试它时,它可以完美运行,但是如果我将它上传到 Azure 网站,则需要 AGES 才能渲染页面。
视图存储在 Azure Blob 存储中,我将日志条目放在 GetFile 上并发现它们被缓存,但是看起来网站在每个页面上都在不断重新编译(是的,每个页面,因为当我刷新时它被编译Azure 网站页面会立即显示,但不会显示我未访问过的其他页面)
所以我的第一个猜测是 - Azure 网站性能很差,但后来我将它升级到 P3 大型实例 Web 应用服务计划,仍然遇到同样的问题。所以这让我想我在 VirtualPathProvider 中是否有任何错误?由于 GetFile() 方法并不总是被命中并且访问的页面在刷新后立即显示,我确信缓存也在工作,所以它让我思考在这个过程中是否发生了任何其他编译导致每个页面占用这么多第一次加载的时间?
谁能帮忙请...
提前致谢。
.net - 将 NCache 应用于现有项目(使用 CacheDependency)
C# 或 VB.net 中的帮助/答案很好
我有一个目前使用 system.web.Caching.CacheDependency 的大型项目,例如
现在,我正在尝试设置 NCache 并理想地更改最少的行(但上述情况发生在数百个地方。
因为我需要传入 ,所以NCache.Runtime.Dependencies.CacheDependency
执行以下操作将不起作用:
因为我们试图通过 asystem....CacheDependency
而不是NCache....CacheDependency
有什么建议可以实现这一目标,以及最干净的方法吗?
谢谢
java - Gradle 解析策略 cacheDynamicVersionsFor 不起作用
我想每次都推动 Gradle 重新下载我的 SNAPSHOT 依赖项。可以通过--refresh-dependencies
.
但我想以编程方式以另一种方式进行:
(我知道如果版本是SNAPSHOT,不需要添加changing = true
,但添加它以防万一)
所以在那之后,当我运行我的应用程序时,./gradlew clean bootRun --info
我会看到下一个日志:
还有一个问题,它下载了 pom 文件,但不下载 jar。我应该在构建脚本中进行哪些更改以使其按预期工作?
只有当我指定
--refresh-dependencies
它会下载jar:
caching - Kentico 12 在不同环境中的缓存
带有 Kentico 12 后端的 MVC C# 项目(没有拖放 Web 部件,仅将其用作后端 CMS,并调用 Kentico API 获取数据)。基本上,我们遇到了仅在我们的一个环境 (PROD) 上发生的缓存问题。我相信这更多的是 IIS 或环境问题,而不是 Kentico 问题。让我给你一些细节:Kentico 12 MVC v12.0.34(从 K11 升级),如前所述,我们不使用任何 Web 部件/组件。Kentico 只是后端 CMS,我们使用 Kentico API 为每个页面提取数据并滚动我们自己的视图和模型。
我们有 2 个环境,STG 和 PROD,它们都运行 Win Server 2016,它们的操作系统构建版本 STG 略有不同:v1607 操作系统构建 14393.3115,IIS v10.0.14393.0 PROD:v1607 操作系统构建 14393.2999,IIS v10.0.14393.0
在 Kentico 中,当我们更新类别时,会为 UPDATE 连接一个事件并运行以下代码:
这会清除所有类别缓存(Kentico 中的 CacheDependency),当刷新网页时,您猜对了,所有类别都会被再次调用。如果您再次尝试,您将获得一个缓存版本,直到类别中发生更改(或者缓存时间用完,例如一个月)。完全按照您在 STG 盒子上的想法工作。
只是为了看看发生了什么,我添加了一些 Kentico 信息日志记录,以检查在此更新事件触发的不同位置发生了什么。从 EventArgs 我可以得到事件的来源(哪个类别触发了它),我可以看到它何时使用缓存信息以及何时从数据库中检索它。惊人的。
我遇到的问题是,当我使用完全相同的代码库以及相同的日志记录在 PROD 上运行并触发相同的事件时,缓存不会被释放。事件日志说它有,但是当网页刷新时,GetAllCategories 不是全新的,而是最后一个缓存的值。获取新版本的唯一方法是回收应用程序池或在 IIS 中关闭/启动应用程序。
类/方法上没有输出缓存。跨 2 个不同服务器的相同代码库。是否有一些环境变量或 IIS 设置可以在 PROD 框上进行不同的设置?
有什么想法可能导致这种情况吗?其他地方可以在网络服务器上查看?谢谢你的帮助!
kentico - Kentico V9 中的内容缓存依赖项
我想在更新另一个自定义表项时更新一个自定义表的缓存内容。假设我有两个自定义表:产品和订单。产品和订单都有列表和编辑页面。
在 DB 中,如果 Product 发生更改,则 Product 上有一个触发器会更新 Order 上的一些数据。
我的情况是,当我更新产品 1(产品类型的项目之一)时,我希望订单(所有订单)缓存刷新并反映订单数据库中所做的更改。这不是现在发生的。
内容缓存的全局设置为 10 分钟。但不知何故,反映变化需要 20 分钟。不知道为什么。同样在订单的 CustomTableRepeater 的系统设置->缓存分钟设置为 0 意味着它根本不应该缓存内容,但它仍然如此,所以我在这里不知所措
对这种情况的回答是根据 Kentico 文档设置缓存依赖虚拟键。
我的问题是:
- 我是否在产品的编辑页面的 web 部件部分输出缓存依赖属性上设置所有订单的依赖键?
例如orders|all
当任何产品被修改时,这是否会刷新为自定义表数据源缓存的所有订单记录?
- 或者我在订单的转发器的系统设置->内容缓存依赖属性上设置所有产品的依赖键?
例如products|all
请注意,缓存分钟属性设置为 0,因此理想情况下不应缓存此内容。
- 或者将上面的键添加到订单的编辑页面的 webpart 的部分输出依赖项?
同样对于自定义表如何获得正确的虚拟密钥?是吗
products|all
或者
nodes|corportateside|products|all
或者
customtableitem.products|all
或者我需要添加可以在调试->缓存设置中看到的页面虚拟键?
我已经尝试设置所有这些东西,但似乎没有任何效果。任何帮助是极大的赞赏。