我查看了文档并且没有看到(从一见钟情)金字塔中缓存的任何内容。也许我错过了一些东西......或者也许有一些第三方软件包来帮助解决这个问题。
例如,如何缓存db查询(SQLAlchemy),如何缓存视图?任何人都可以提供一些示例或文档的链接吗?
感谢任何帮助!
编辑:
如何使用memcache或数据库类型缓存或基于文件的缓存?
答案 0 :(得分:6)
您应该安装pyramid_beaker。
然后阅读beaker文档。默认情况下,它使用基于内存的缓存,但它可以轻松支持memcached和基于文件的缓存。
答案 1 :(得分:6)
您的选项是pyramid_beaker和dogpile.cache
编写pyramid_beaker是为了为会话提供烧杯缓存。它还允许您配置烧杯缓存区域,可以在别处使用。dogpile.cache是烧杯的替代品。它还没有集成到提供会话支持或基于environment.ini的设置。然而,它解决了烧杯的许多杂项问题和缺点。
你不能/不应该缓存SqlAlchemy查询或结果。奇怪和坏事将会发生,因为SqlAlchemy对象绑定到数据库会话。将sqlalchemy结果转换为另一个对象/字典并缓存它们会好得多。