为了加速基于大型postgres集合的页面的页面生成,我们将查询结果缓存在memcache中。但是,对于非常大或者很少访问的不可变集合,我想知道是否在postgres中保存服务器端游标是一种可行的备用缓存策略。使用postgres服务器端游标进行缓存
这个想法是,在一个集合的中间服务一个页面之后,“next”和“prev”链接比集合中其他地方的随机查询更有可能被使用。我可以在附近放置一个“WITH HOLD”光标,以避免查询的(看似不可避免的)大启动成本?
我想知道服务器上的资源消耗。如果集合是不可变的,保存游标不需要太多的资源,但我想知道postgres在这方面的优化程度。任何链接到进一步的文件将不胜感激。
我设想的缓存策略是存储固定数量的游标。如果某人在某个特定的查询附近,它将用于检索一页结果。否则,闲置时间最长的光标将被重置。 – shaunc