本文介绍了蓝龙Coldfusion服务器缓存问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在ColdFusion MVC框架"Mach-II"中构建了一个应用程序,并托管在蓝龙ColdFusion服务器上.

I have an application build in ColdFusion MVC framework "Mach-II" and hosted on blue dragon ColdFusion server.

它会导致缓存问题.当我添加一个包含一些内容的新页面并加载该页面时,它的工作正常.但是,当我在同一文件中进行一些更改并再次点击它时,它不会更新我的更改.它总是向我展示我第一次制作的内容.好像服务器正在缓存我的页面,并且没有考虑进一步的更改.我尝试了许多解决方案,但未能解决问题.

It causes caching issue. When i added a new page with some contents and load the page than it's working fine. But when i made some changes in the same file and hit it again its not update my changes. Its always showing me the content that i have made in the very first time. Its seems like that the server is caching my page and did not consider further changes. I have tried many solutions but failed to solve the problem.

如果您有任何解决方案,请告诉我.

Please let me know if you have any solution for that.

推荐答案

对于评论来说,这太长了-但答案不多.

This is a bit too long for a comment - but it's not much of an answer.

首先,您对StackOverflow的问题很广泛.如果您不是自己查看代码,也没有什么要向我们展示的,则不能保证我们可以为您提供任何帮助.

First off, your question is quite broad for StackOverflow. If you aren't looking at the code yourself, and have nothing to show us, there is no guarantee we can help you at all.

听起来好像该服务正在使用查询缓存-看起来像这样.

It sounds like maybe this service is using query caching - which looks something like this.

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

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

Basically it stores a query's result in memory on the server. It can really help reduce strain on the database. It's possible that they've set a time limit on this caching feature that's longer than you'd like.

如果您无权访问该代码,那么这就是您首先要问的问题.

If you don't have access to the code, THIS is the issue you want to ask about first.

可能完全不同.

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

来源:

在管理控制台中指定的缓存大小表示有多少缓存 这些缓存的模板要保留.默认为60,但该数字可能 需要为您的应用程序进行更改,具体取决于多少个CFML 应用程序使用的模板.每个模板使用一个条目 (CFM或CFC文件).

The cache size, specified in the Admin Console, indicates how many of these cached templates to keep. It defaults to 60 but that number may need to change for your application, depending on how many CFML templates your application uses. One entry is used for each template (CFM or CFC file) requested.

了解这并不缓存OUTPUT非常重要 页面的内容,而是将模板从源代码渲染到 其内部对象.共享模板的一个缓存实例 在应用程序中的所有用户中.

It’s very important to understand that this is not caching the OUTPUT of the page but rather the rendering of the template from source into its internal objects. One cached instance of the template is shared among all users in the application.

与ColdFusion一样,一旦文件缓存已满(例如,您设置 到60和60个模板已被请求),然后下一个请求 对于尚未缓存的模板,将强制引擎刷新 缓存中最旧的(最近使用最少的)条目以腾出空间. 自然,如果您将此文件缓存大小设置得太低,则会在 高速缓存可能会发生,因为为文件腾出空间只是为了尽快 再次请求刷新文件.

As in ColdFusion, once the file cache is full (for instance, you set it to 60 and 60 templates have been requested), then the next request for a template not yet cached will force the engine to flush the oldest (least recently used) entry in the cache to make room. Naturally, if you set this file cache size too low, thrashing in the cache could occur as room is made for files only to soon have the flushed file requested again.

听起来您可能必须重新启动ColdFusion应用程序或清除CFAdmin中的模板缓存.

It sounds like you might have to either restart the ColdFusion application or clear the Template Cache in the CFAdmin.

这篇关于蓝龙Coldfusion服务器缓存问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-27 14:29