2016-02-05 87 views
3

我有一个应用程序在ColdFusion MVC框架“Mach-II”中构建,并托管在蓝龙ColdFusion服务器上。Blue Dragon Coldfusion服务器缓存问题

它导致缓存问题。当我添加了一些内容的新页面,并加载页面,而不是工作正常。但是,当我在同一个文件中做了一些更改,并再次点击它,它不会更新我的更改。它总是向我展示我第一次制作的内容。它似乎是服务器缓存我的网页,并没有考虑进一步的变化。我尝试了很多解决方案,但未能解决问题。

请让我知道你是否有任何解决方案。

+1

如果您故意引入语法错误,会发生什么情况? –

回答

4

这对于评论来说有点太长 - 但这不是一个很好的答案。

首先,你的问题是相当广泛的StackOverflow。如果您没有亲自查看代码,也无法向我们展示,我们无法保证我们可以为您提供帮助。

听起来好像这个服务使用查询缓存 - 看起来像这样。

<cfquery datasource="CRM" name="testQuery" cachedwithin="#CreateTimeSpan(0,0,30,0)#"> 
-SQL logic- 
</cfquery> 

基本上它将查询的结果存储在服务器的内存中。它确实可以帮助减轻数据库的压力。他们可能已经为此缓存功能设置了时间限制,而且时间限制比您想要的要长。

如果您无法访问代码,则首先要询问这个问题。

编辑:它可能完全不同。

https://docs.oracle.com/cd/E13176_01/bluedragon/621/BlueDragon_621_WL_User_Guide.html#_Toc121303111

从源:

在哪里的ColdFusion(5和MX)一个“模板缓存”定义为一个地方 持有一旦从源代码渲染存储器模板,BlueDragon 具有相同的概念,但将其称为“文件缓存”。在两个 引擎中,一次从源渲染的模板将保留在缓存中 ,直到服务器(或J2EE或.NET Web应用程序)重新启动。

管理控制台中指定的高速缓存大小指示要保留这些高速缓存模板的多少个 。它默认为60,但该数字可能需要根据您的应用程序使用多少个CFML 模板来更改您的应用程序。一个条目用于请求的每个模板 (CFM或CFC文件)。

理解这一点非常重要,它不会缓存页面的OUTPUT ,而是将模板从源渲染到其内部对象的 。模板的一个缓存实例在应用程序中的所有用户中共享 。在ColdFusion中,一旦文件缓存已满(例如,您将其设置为 它已经被请求60和60个模板),那么对于尚未缓存的模板的下一个请求 将强制引擎刷新 最新(最近最少使用)条目在缓存中腾出空间。 当然,如果您将此文件缓存大小设置得太低,则可能会发生 缓存中的抖动,因为仅为文件留出空间,以便很快就会再次请求 刷新文件。

听起来好像您可能需要重新启动ColdFusion应用程序或清除CFAdmin中的模板缓存。

+1

它不是一个代码问题。它甚至没有在Application.cfc文件中显示任何更改。 –

+1

所以这就是为什么我没有显示任何代码片段的原因 –

+1

我认为它的服务器缓存问题 –