使用postgres触发器清除APC缓存

时间:2011-08-19 13:04:17

标签: postgresql triggers apc

我一直在为PHP应用程序寻找合适的缓存解决方案。

我决定让应用程序执行所有“首先我必须登陆群集中的正确服务器”,因此我使用更快的APC缓存,而不是memcache。

它确实包含一个开销,用于找到(在改进缓存方面)正确的服务器,但我有点喜欢它。

我听说有一个项目pgmemcache,例如从postgres触发器中清除过时的memcached条目。

我确实按照自己的方式处理过时的日期,但我仍然很好奇,如果有什么东西可以从postgres触发器中访问APC缓存。

提前致谢, kriscom

1 个答案:

答案 0 :(得分:1)

我没有看到任何与APC相同的pgmemcache。 Pgmemcache是​​开源的,因此您可以将其用作创建APC等效项的基础:https://github.com/Ormod/pgmemcache

如果您的缓存可以稍微过时,您可以在Postgres中创建一个表来充当失效/更新队列。需要更新缓存时,使用触发器插入行。然后创建一个PHP脚本,该脚本不断轮询队列并执行缓存操作。

我不建议跨层传播缓存管理。您可以在数据访问层中完成所有操作,也可以在数据库层中完成所有操作,但不要混用它们。