缓存专题提供缓存的最新资讯内容,帮你更好的了解缓存。
我使用的是Rails 3.2.13和Rails Asset Pipeline.我想使用资产管道,所以我可以使用SASS和CoffeeScript和ERB作为我的资产,并且管道自动编译它们,所以我无法关闭开发中的管道.我没有预先编译资产,甚至没有公共/资产/目录. 但是,当我对包含的文件进行更改时,例如在layout.html.erb文件中包含(呈现)的_partial.html.erb文件,而不更
我最近将我的应用程序升级到了3.1版,通常一切似乎都在工作,但有一点是让我疯狂. 我有两个主要的js文件,我们称之为application.js和main.js. application.js有我的清单内容,并在main.js中加载.这工作正常我的问题是当我处于开发模式时,我对main.js进行了更改,然后刷新页面,网站不会接收到更改.为了拉入更改,我已经重新启动了rails服务器. 我在开发中启
Rails的ActiveRecord有一个名为Query Caching(ActiveRecord :: QueryCache)的功能,它可以保存SQL查询在请求的生命周期中的结果.虽然我不太熟悉实现的内部实现,但我认为它将查询结果保存在Rack env中的某个位置,这在结束请求时被丢弃. 不幸的是,Mongoid目前没有提供这样的功能,而且这种情况更加恶化,因为有些查询隐含地发生(引用). 我正
是否有一个Ruby http客户端库,其中响应由ETag自动缓存,If-Non-Match标头应用于以前使用的URL的请求? 您可能需要查看“ Ruby HTTP clients features”列表以获得完整的概述.
有没有办法关闭全局的Rails的SQL查询缓存?或者,至少在进入交易块时不使用它? 另外,sql查询缓存是否只适用于控制器动作,还是用来耙任务或者后台进程,我写的包括Rails和使用我的模型? 得到它了!在application.rb中: config.middleware.delete "ActiveRecord::QueryCache"
使用如下的Rails.cache.fetch甚至在我的开发环境中缓存(关闭缓存): @boat_features = Rails.cache.fetch("boat_features", expires_in: 10.minutes) do BoatFeature.all end 有没有人遇到过这个? 这很正常.这种缓存在开发过程中没有被关闭.在以前的应用程序中,这是一个问题,我们使用内存存储
我有一个相当大的jpg图像文件和几个css文件,这些不会改变每次重新加载,但每次它加载完整的imgae而不是在浏览器中缓存,我尝试更改配置,如config.action_controller. perform_caching = true等但似乎没有任何帮助.有没有办法做到这一点? 这在我的production.rb中对我有用: config.serve_static_assets = true
Rails 4使用cache_digests( https://github.com/rails/cache_digests)来协助片段高速缓存失效:cache_digests创建模板的MD5散列及其所有已知的依赖关系,允许片段高速缓存通过在模板或其依赖关系更改时分配新密钥而变为无效. 我的问题是:如果application.css文件的MD5哈希在rake资产期间发生变化,那么包装stylesh
是否可以覆盖我的控制器,这与Etags的单元测试非常相关? 这是我正在尝试做的事情: 如果页面不是陈旧的(意味着它是新鲜的),我正在为响应添加一些标题. 当我试图测试它(rspec)时,无论我有多少类似的请求,我仍然会收到200 OK而不是304,而我的标题不会被修改.此外,如果我跟踪request.fresh?(响应),它总是错误的. 但是,它完全适用于浏览器. 我已经尝试过表示ActionCo
鉴于Heroku Cedar没有Varnish提供的http缓存,我想使用Rack :: Cache. 我被告知rails 3.1.1默认情况下Rack :: Cache处于活动状态,我只需要确保在配置中: config.action_controller.perform_caching = true 我需要选择一个缓存存储,对于我正在使用的这个实验: config.cache_store = :
我使用以下内容来缓存使用memcached的缓慢加载页面: caches_action :complex_report, :expires_in => 1.day 控制器操作受Devise身份验证保护. 页面当前在用户第一次请求时被缓存.然后从缓存中提取当天的后续请求. 这个问题是初始请求需要20-30秒才能加载.是否可以通过计划任务预先填充缓存? 任何建议非常感谢. 以下是对以前基于cron的解
我正在寻找一种更新给定模型的计数器缓存的漂亮方法. 这是我的模型: class GameParticipation < ActiveRecord::Base belongs_to :game, counter_cache: true end 而且: class Game < ActiveRecord::Base has_many :game_participations end 这不是
在 Ruby on Rails中,您可以使用以下语法从数据库中找到记录: <model_name>.find_by_<field_name>() 示例:User.find_by_email(‘test@test.test’),User.find_by_id(1),… 以前,如果我没有错,我会读到某个地方可以明确禁用“查找”操作的缓存,但我不记得如何. 有人可以帮我记住吗? 您可以使用ActiveR
我正在使用AngularJS和Rails构建一个网站.我用于模板的 HTML文件存储在/ app / assets / templates下,每次更新路由或更改模板内部嵌套的部分内容时,我需要“触摸”最高级别的文件/ app / assets / templates目录为我正在更改的html文件. 所以如果我有一个页面“edit.html”加载了一个部分“_form.html”,那么每当我更新一个
所以我有一个应用程序有2个不同的模型,评论和回复,每个你可以同意或不同意,所以我有一个名为Emotion的多态模型.这是我的代码: class Comment < ActiveRecord::Base belongs_to :user has_many :replies has_many :emotions, :as => :emotionable end class Reply
因此,在我的应用程序中,我可以禁用所有测试的缓存,这将是理想的,但显然有许多遗留测试依赖于缓存功能.有没有办法为单个RSpec测试启用Rails缓存? 就像是: before(:each) do @cache_setting = Rails.cache.null_cache Rails.cache.null_cache = true end after(:each) do Rails
我已经阅读了很多帖子,文章和问题. Rails资产管道的答案 但我还是没想出如何完全关闭缓存. 我们正在使用Rails 3.2.11并且在我们的实验室环境中(类似于开发)我们遇到了问题,因为即使我们没有在资产管道中预编译或指纹识别资产,它们仍然被缓存在Rails中(Rack ?)缓存.这很烦人,因为某些资产是基于其他配置而更改的ERB,因此缓存变得陈旧.为了尝试关闭缓存,我们设置了以下配置: co
假设我有控制器home_controller.rb和动作索引. 我想缓存索引页面,所以我正在做: caches_page :index 但是希望它只为未登录的用户缓存.如果我要做出有条件的: caches_page :index, :if => :user_not_signed_in? 页面将在首次未登录用户时缓存.现在,每个登录用户也会看到未登录的内容.有没有办法在不更改网址的情况下分离此操作?
我有一个rails应用程序,我试图使用Rack :: Offline使用 HTML5应用程序缓存. application.manifest文件已设置,正在由我的HTML页面下载和检查. 清单如下: CACHE MANIFEST # 2d9bf2b03a07dc960fd8fe69659ceeffd4d28ccf8619669a506c3682bf223878 404.html 422.html
我们知道IIS缓存ConfigurationManager.AppSettings,所以它只读取磁盘一次,直到web.config更改。这是为了性能目的。 有人在: http://forums.asp.net/p/1080926/1598469.aspx#1598469 .NET Framework不会对app.config执行相同的操作,但它对于每个请求从磁盘读取。但我觉得很难相信,因为它会更慢