首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Fusebox 4应用程序的cflock问题

Fusebox 4应用程序的cflock问题
EN

Stack Overflow用户
提问于 2012-07-12 16:27:33
回答 2查看 196关注 0票数 1

我继承了一个当前在Fusebox4上运行的CF应用程序。

我注意到在CF Administrator中有相当多的应用程序范围超时,并且我不是100%关于锁定以及应该在哪里使用cflock的。

代码语言:javascript
复制
<cflock scope="application" type="exclusive" timeout="30">
    <cfinclude template="fusebox4.runtime.cfmx.cfm">
</cflock>

现在,我可以在主fusebox文件周围看到一个cflock。我的直觉告诉我,这真的不是一个好的练习。有人能告诉我这对于Fusebox应用程序来说是不正确的吗?

EN

回答 2

Stack Overflow用户

发布于 2012-07-12 21:26:31

我不确定fusebox.runtime.cfmx.cfm中有什么东西需要一个完整的应用程序锁。你应该去检查一下。当您为每个请求锁定整个“应用程序范围”时,您正在影响该文件的某种单线程。换句话说,2个请求不能同时运行这个文件。由于它是框架的通用文件,这极大地影响了您的可伸缩性。正如Germann建议的那样,应该明智地使用应用程序-通常在应用程序的生命周期中使用一次。

同时,有问题的特定文件(fusebox4.runtime.cfmx.cfm)中有许多与应用程序无关的内容。没有它你就不能运行框架...我会删除这个锁,并检查fusebox4.runtime.cfmx.cfm,以尝试确定为什么有人一开始就觉得有必要锁定文件。

还有一件事。fusebox中某处有一个"MODE“设置,可以设置为DEV或"PROD”(我的记忆可能有问题)。可能是你被设置为DEV -在这种情况下,有很多事情正在发生,你想要避免-主要是每个请求都会重新组装"parsed“目录中的文件。所以也要检查这一点。

票数 3
EN

Stack Overflow用户

发布于 2012-07-12 16:43:25

锁住大/长的代码块是一种糟糕的做法。在这种情况下,它实际上应该只在应用程序启动时被调用一次(如果你使用Application.cfc,把它放在OnApplicationStart()方法中,如果你还在使用Application.cfm,那么把它放在applicationStart/restart if块中)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11447837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档