coldfusion - 在 REQUEST 范围内存储 Coldfusion CFC 实例,安全吗?

标签 coldfusion coldfusion-8 cfc

将 CFC 对象存储在 REQUEST 范围内以便稍后访问是否安全?现在,我们的网站至少会加载两次导航数据,如果他们使用我们的面包屑导航功能,可能会加载三次。有时,此数据可能会有所不同,但大多数情况下,最终会进行三个单独的调用以获取完全相同的导航数据...

所以,我想在第一次加载后,将导航数据保存在某种结构的 REQUEST 范围内,在随后的调用中,只需检查该数据是否已经存在,如果存在,就使用什么被存储而不是再次重新创建它。我知道这将访问包含对象之外的共享范围,这可能不是一个好的做法,但最终可以减少一半的页面加载时间......

我知道这是可以做到的,但是,我们最近遇到了服务器问题,其中一些可能是我们使用/存储某些东西的方式造成的内存泄漏,所以想知道这样做是否安全...

最佳答案

variablesrequest 范围都适合您的目的,但更明智的做法是修改需要访问此变量的函数以接受您的缓存变量作为论据。对于 CFC,它可以在 init() 方法中传递并存储以供该 CFC 中的方法使用(假设您对其进行了初始化)

通过依赖全局变量(即使是一个仅限于当前请求的变量),您可能只会给自己带来困难,这可以通过确保方法更加封装来解决。

如我之前的评论所述,ColdFusion - When to use the "request" scope?值得快速阅读,因为它在答案中包含相关信息。

关于coldfusion - 在 REQUEST 范围内存储 Coldfusion CFC 实例,安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10210793/

相关文章:

jquery - 对带有 URL 的数据属性进行 EncodeFor

javascript - jQuery 未发布 - (jQuery - ColdFusion)

jquery - 使用 jquery 将数组传递给 ColdFusion 组件

java - ColdFusion CFC 的垃圾收集

excel - 导出到 Excel 无法正确显示数字

web-services - 我的主机切换到 CF11,并且我的 CF Web 服务不再返回其对象中的元素

jquery - <cfcontent type ="text/json"> 打开下载对话框,以及其他 ajax 怪异

mysql - 简单的 ColdFusion 脚本在 IE 中有效但在 Firefox 中无效?

java - 使用 notnoop 的 java-apns 库时导致此错误的原因是什么?

arrays - CFScript 中的数组声明