标签: caching

Flash CS4拒绝放手

我有一个Flash项目,它有很多源文件.我有一个相当频繁使用的课程,称之为Jenine.我最近(也许,无情地)将Jenine从一个名称空间重新定位到另一个名称空间.我以为我们已经准备好了 - 我以为是时候了.新Jenine在各方面都做得更好 - 她已经失去了一些代码膨胀,她已经脱离了一些残余的阶级关系,她终于回到了她一直秘密知道的命名空间,这是她真实的那个曾经属于.她是她自己的一员.

不幸的是,Flash没有这个.也许它已经形成了一种依恋.也许它不希望 Jenine脱钩.无论哪种方式,它都坚持在其记忆中的旧的,完美的Jenine版本.它拒绝继续前进.它忽略了她的(函数)调用.它试图忘记她的新的公共界面.相反,它构建的每个Jenine实例始终是旧版本的副本,直到其类路径:

var jenineInstance:Jenine = new Jenine();
trace( getQualifiedClassName(jenineInstance));
// Should print: com.newnamespace.subspace::Jenine
// Prints: com.oldnamespace.subspace::Jenine
// Ah, young love!
Run Code Online (Sandbox Code Playgroud)

我们打了.我对自己所说或做过的一些事情并不感到骄傲.最后,在愤怒的高潮中,我完全删除了所有Jenine的引用.她完全被系统彻底清除了.我的光标落在"清空垃圾"菜单选项上,就像棺材的冷盖一样.

我认为Flash无法恢复.直到今天,它仍然依附于珍妮的记忆.她的旧的,不完美的定义仍然像我被遗弃的幽灵一样漂浮在我的项目中.每当我强迫Flash编译时,它仍然会将她的爱情插入到我的电影中,将她的定义融入其他生活课程中,就像一个小神社.我想知道他们是否能看到她.

Flash和我不再谈论了.我写了我的代码,它编译它.在镇上有一个名叫Summer的新女孩看起来几乎与Jenine完全相同,好像有人刚刚将她的源代码批发复制到一个新的类中,但Flash并没有表现出任何兴趣.大多数时候,当它认为我不看时,它只是在我的评论中徘徊并写下糟糕的诗歌.

我希望没有其他人有类似的经历,这只是一个奇怪的,痛苦的波纹在可怕的黑暗泻湖,即Flash代码库.如果你有一些侥幸的机会,或者你知道如何删除编译器正在使用的任何该死的缓存,请帮助.

flash caching flash-cs4

2735
推荐指数
7
解决办法
11万
查看次数

忽略已提交到Git存储库的文件

我有一个已经初始化的Git存储库,我添加了一个.gitignore文件.如何刷新文件索引以便忽略我想忽略的文件?

git version-control caching gitignore git-rm

2429
推荐指数
21
解决办法
68万
查看次数

禁用Chrome缓存以进行网站开发

我正在修改网站的外观(CSS修改)但由于恼人的持久缓存而无法在Chrome上看到结果.我试过Shift+刷新但它不起作用.

如何暂时禁用缓存或以某种方式刷新页面以便我可以看到更改?

browser caching google-chrome browser-cache google-chrome-devtools

1563
推荐指数
19
解决办法
70万
查看次数

如何在所有浏览器中控制网页缓存?

我们的调查向我们表明,并非所有浏览器都以统一的方式尊重http缓存指令.

出于安全原因,我们不希望在我们的应用程序某些网页缓存,有史以来,通过Web浏览器.这必须至少适用于以下浏览器:

  • Internet Explorer 6+
  • Firefox 1.5+
  • Safari 3+
  • Opera 9+

我们的要求来自安全测试.从我们的网站注销后,您可以按后退按钮查看缓存页面.

https caching http http-headers

1474
推荐指数
17
解决办法
88万
查看次数

Memcached与Redis?

我们正在使用带有Redis服务器的Ruby Web应用程序进行缓存.有没有必要测试Memcached

什么会给我们更好的表现?Redis和Memcached之间的任何利弊?

需要考虑的要点:

  • 读/写速度.
  • 内存使用情况.
  • 磁盘I/O转储.
  • 缩放.

memcached caching web-applications redis

1398
推荐指数
15
解决办法
49万
查看次数

iOS 6上的Safari缓存$ .ajax结果吗?

自升级到iOS 6以来,我们看到Safari的Web视图可以自由地缓存$.ajax调用.这是在PhoneGap应用程序的上下文中,因此它使用Safari WebView.我们的$.ajax调用是POST方法,我们将缓存设置为false {cache:false},但仍然会发生这种情况.我们尝试手动添加TimeStamp标题,但它没有帮助.

我们做了更多研究,发现Safari只返回具有静态功能签名并且不会因呼叫而改变的Web服务的缓存结果.例如,想象一个名为:

getNewRecordID(intRecordType)
Run Code Online (Sandbox Code Playgroud)

该函数反复接收相同的输入参数,但每次返回的数据应该不同.

一定是苹果急于让iOS 6拉链令人印象深刻,他们对缓存设置感到满意.还有其他人在iOS 6上看到过这种行为吗?如果是这样,究竟是什么导致了它?


我们发现的解决方法是将函数签名修改为如下所示:

getNewRecordID(intRecordType, strTimestamp)
Run Code Online (Sandbox Code Playgroud)

然后总是传入一个TimeStamp参数,并在服务器端丢弃该值.这解决了这个问题.我希望这能帮助其他一些在这个问题上花费15个小时的穷人,就像我一样!

javascript ajax jquery caching mobile-safari

1057
推荐指数
13
解决办法
14万
查看次数

如何强制浏览器重新加载缓存的CSS/JS文件?

我注意到一些浏览器(特别是Firefox和Opera)非常热衷于使用.css.js文件的缓存副本,即使在浏览器会话之间也是如此.当您更新其中一个文件但用户的浏览器继续使用缓存副本时,这会导致问题.

问题是:在更改文件时,强制用户浏览器重新加载文件的最优雅方法是什么?

理想情况下,解决方案不会强制浏览器在每次访问页面时重新加载文件.我会发布自己的解决方案作为答案,但我很好奇,如果有人有更好的解决方案,我会让你的投票决定.

更新:

在这里讨论了一段时间后,我发现John Millikinda5id的建议很有用.事实证明,有一个术语:自动版本控制.

我在下面发布了一个新的答案,它是我原来的解决方案和John的建议的组合.

SCdF建议的另一个想法是将伪造的查询字符串附加到文件中.(一些Python代码自动使用时间戳作为伪造的查询字符串由pi提交.).但是,有一些关于浏览器是否会使用查询字符串缓存文件的讨论.(请记住,我们希望浏览器缓存文件并在以后的访问中使用它.我们只希望它在更改后再次获取文件.)

由于不清楚伪造的查询字符串会发生什么,我不接受这个答案.

javascript css caching auto-versioning

957
推荐指数
26
解决办法
38万
查看次数

什么是"缓存友好"代码?

" 缓存不友好代码 "和" 缓存友好 "代码之间有什么区别?

如何确保编写高效缓存代码?

c++ memory performance caching cpu-cache

703
推荐指数
7
解决办法
14万
查看次数

Cache-Control有什么区别:max-age = 0和no-cache?

标题Cache-Control: max-age=0意味着内容被认为是陈旧的(并且必须立即重新获取),这实际上与之相同Cache-Control: no-cache.

caching http http-headers

616
推荐指数
8
解决办法
41万
查看次数

如何强制客户端刷新JavaScript文件?

我们目前正在进行私人测试,因此仍然在进行相当快速的更改,尽管显然随着使用量开始增加,我们将放慢这一过程.话虽这么说,我们遇到的一个问题是,在我们用新的JavaScript文件推出更新之后,客户端浏览器仍然使用文件的缓存版本,但他们看不到更新.显然,在支持调用上,我们可以简单地通知他们进行ctrlF5刷新以确保他们从服务器获取最新文件,但最好在此之前处理它.

我们当前的想法是简单地将版本号附加到JavaScript文件的名称上,然后在进行更改时,增加脚本上的版本并更新所有引用.这绝对可以完成工作,但更新每个版本的引用可能会变得很麻烦.

我确信我们不是第一个处理这个问题的人,我想我会把它扔给社区.在更新代码时,如何确保客户更新缓存?如果您使用上述方法,您是否正在使用简化更改的流程?

javascript versioning caching

570
推荐指数
12
解决办法
44万
查看次数