Rails 缓存优化:页面、动作与客户端缓存策略
在 Rails 应用开发中,缓存是提升性能的重要手段。本文将详细介绍页面缓存、动作缓存、缓存清扫器以及客户端缓存等技术,帮助你优化应用性能,减轻服务器负载。
页面缓存问题与动作缓存的引入
在使用 caches_page 方法时,可能会遇到一些问题。当点击链接进入项目页面时,页面显示的登录用户信息可能不正确,这是因为 Rails 缓存了整个页面,而不是仅缓存票务列表。此外,该页面还会忽略控制器中设置的授权,所有人都可以访问,这显然是不可取的。
caches_page 更适用于没有动态元素的页面,如显示当前登录用户的顶部区域或票务列表。为了解决这些问题,我们可以使用 caches_action 方法。
在使用 caches_action 之前,需要先删除旧的缓存文件。具体操作是删除 public/projects 目录,下次请求该页面时,缓存将重新创建。
在 ProjectsController 中,将 caches_page :show 替换为 caches_action :show 。刷新页面或重新访问 http://localhost:3000/projects/1 后,在服务器终端中,将不再看到 Write page /.../ticketee/public/projects/1.html (0.3ms) <
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



