Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Module Kohana 3-如何使用memcached缓存查询结果?_Module_Memcached_Kohana 3.0 - Fatal编程技术网

Module Kohana 3-如何使用memcached缓存查询结果?

Module Kohana 3-如何使用memcached缓存查询结果?,module,memcached,kohana-3.0,Module,Memcached,Kohana 3.0,我正在一个使用Kohana3框架的大型项目中工作,实际上我需要改进它,添加一个缓存系统来减少MySQL连接的数量 我正在考虑开发一个基本(但通用)模块来生成完整的查询结果缓存,但将表查询结果分别管理到不同的组中 Pex: 缓存组:用户、角色、角色\用户等 每个组包含对应表中的所有查询结果。因此,如果我想从“用户”获取值,缓存系统会自动将结果添加到缓存系统,但如果我更新“用户”表,“用户”组中的所有键都会被删除。我知道,它不是那么聪明,但它又快又安全(系统还生成用户列表,结果可能是正确的) 然后,

我正在一个使用Kohana3框架的大型项目中工作,实际上我需要改进它,添加一个缓存系统来减少MySQL连接的数量

我正在考虑开发一个基本(但通用)模块来生成完整的查询结果缓存,但将表查询结果分别管理到不同的组中

Pex:

缓存组:用户、角色、角色\用户等

每个组包含对应表中的所有查询结果。因此,如果我想从“用户”获取值,缓存系统会自动将结果添加到缓存系统,但如果我更新“用户”表,“用户”组中的所有键都会被删除。我知道,它不是那么聪明,但它又快又安全(系统还生成用户列表,结果可能是正确的)

然后,我的问题是:?我如何在应用程序树中“注入”我的代码

首先,我需要(生成一个散列键)完整的查询(对于某个表-用作组-),以及要存储的查询结果。而且,当另一个散列(在该组中)与存储的散列相同时,必须从memcached获取该值

所以,我需要:表名、查询和结果。。。我认为可以扩展数据库类,在execute()方法中实现缓存,但我找不到它


我的方法对吗?execute()方法在哪里?

我构建了一个Kohana 3模块来实现这一点,但它必须与查询生成器一起使用。它还使用Memcache来缓存查询。它在插入/更新/删除时失效

这里有一个链接: