Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails中的页面缓存_Ruby On Rails_Performance_Caching - Fatal编程技术网

Ruby on rails rails中的页面缓存

Ruby on rails rails中的页面缓存,ruby-on-rails,performance,caching,Ruby On Rails,Performance,Caching,我的主页对于所有用户来说基本相同,这使得它成为页面缓存的候选。然而,有两件事是特定于用户的。例如,有一个仅为登录用户显示的导航项目,还有一个为特定用户生成的链接,如注销、我的个人资料等 我必须使用片段缓存吗?或者我应该为这些特定项使用页面缓存和嵌入片段缓存吗?或者,还有什么其他方法可以做到这一点 此外,导航栏是在插件(简单导航)中生成的,我如何控制插件中生成的缓存内容 谢谢在这种情况下,您主要局限于片段缓存 对于插件,您可能需要查看源代码,以便调用如何处理缓存。如果插件生成nav作为您推送到模板

我的主页对于所有用户来说基本相同,这使得它成为页面缓存的候选。然而,有两件事是特定于用户的。例如,有一个仅为登录用户显示的导航项目,还有一个为特定用户生成的链接,如注销、我的个人资料等

我必须使用片段缓存吗?或者我应该为这些特定项使用页面缓存和嵌入片段缓存吗?或者,还有什么其他方法可以做到这一点

此外,导航栏是在插件(简单导航)中生成的,我如何控制插件中生成的缓存内容


谢谢

在这种情况下,您主要局限于片段缓存

对于插件,您可能需要查看源代码,以便调用如何处理缓存。如果插件生成nav作为您推送到模板中的某些内容,您可以缓存该片段

根据您的受众,您可能能够将非缓存元素推送到JS。您可以缓存整个页面,然后使用JS翻转登录/注销链接。真的不值得这么努力


与任何性能优化一样,。您是否测量了系统的性能并收集了指标?

谢谢!从性能调优开始。您会推荐哪些工具/实践?