我看到每个视图中都有缓存设置。我是否需要设置这些,或者/ admin / config / development / performance中的核心缓存机制是否会自动执行其中的某些操作,而视图中的这些“额外设置”是否要覆盖drupal核心的默认缓存行为?
我看到每个视图中都有缓存设置。我是否需要设置这些,或者/ admin / config / development / performance中的核心缓存机制是否会自动执行其中的某些操作,而视图中的这些“额外设置”是否要覆盖drupal核心的默认缓存行为?
Answers:
内容:核心性能缓存使用URL的缓存ID存储并提供整个呈现的页面。视图缓存超出了此范围,仅缓存视图输出。
原因:对于已登录的用户来说非常有用;页面上的其他块可能更动态,但是视图不必每次都为每个用户运行查询……只是偶尔在缓存生存期到期时生成页面缓存的用户。
设置:对于诸如将内容标记为新内容之类的事情,允许“渲染输出”比查询更新鲜是有用的,否则只需将它们匹配即可。
大图: Drupal使用服务器在PHP中构建页面并访问数据库(或内存中的缓存)来动态地提供页面。这可以提供出色的功能和内容编辑器的速度...但是要权衡需要了解缓存并正确进行。
模块!
还有一个可爱的Views Content Cache模块,可在内容编辑时清除视图缓存。如果您想走得更远,您可能还需要查看“ 缓存操作 ”,我建议您使用“规则”对此进行调整。
另外,Blockcache Alter允许您为站点上的每个块设置“每个角色”,页面,用户等的缓存选项。
您还可以添加页面管理器和面板。这使您可以做一些有趣的事情,例如将缓存设置为“每个用户”,“每个角色”或许多其他非常有用的配置。虽然我个人避免使用面板。
文档:有关缓存和性能的一般信息,请访问Drupal.org页面。
Views使用了Drupal缓存API,但是它创建了自己的与正常Drupal页面/块缓存不相关的缓存。
视图缓存视图定义本身以及渲染的视图本身。可以通过两种方式缓存呈现的视图,即查询结果或视图的实际HTML。通常,您要缓存输出的HTML,因为这是最有效的性能。在某些情况下,您想根据已登录的用户更改输出,缓存查询也可能非常有效。
Views用于存储缓存的表为:
cache_views
cache_views_data