我浏览了关于 ATK4 的文档,试图找到一个参考点如何处理缓存 - 部分或整页。
好像没有关于此事的条目。奇怪的是为可扩展性而构建的框架。有没有办法缓存数据库查询、页面、视图等?
我浏览了关于 ATK4 的文档,试图找到一个参考点如何处理缓存 - 部分或整页。
好像没有关于此事的条目。奇怪的是为可扩展性而构建的框架。有没有办法缓存数据库查询、页面、视图等?
谢谢你的问题。(我是ATK4的作者)。
在我看来,可扩展性和缓存是两个不同的主题,可以分开讨论。框架通过优化查询和最小化每个请求的负载以及设计可以使用多个节点来水平无缝扩展应用程序的方法来实现可扩展性。还有一个选项可以在页面访问 Web 服务器之前将反向代理添加到缓存页面。
Agile Toolkit 支持两种类型的缓存:
当您阅读有关对象渲染树的文档时 - 框架初始化和递归渲染,因此如果您将“缓存”支持添加到页面级别,您将能够拦截并从缓存中检索它的内容。您还可以缓存视图。
这是一个可用于为您实现缓存的控制器: https ://github.com/agile55/viewcache
有时您希望缓存模型数据,因此您可以从较快的源快速获取数据,而不是从慢速数据库中检索数据。Agile Toolkit 支持多个模型数据源,如果缓存中不包含数据,将首先查询并刷新缓存。在这里您可以找到更多信息或提出更多问题:
http://book.agiletoolkit.org/model/core.html#using-caching
http://forum.agiletoolkit.org/t/is-setcache-implemented/62
鉴于 ATK4 的面向对象特性,您可能会想出一种新的方法来缓存数据。如果您有任何有趣的想法,我们的 c