微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

寻求有关mysql 5.6 memcache集成的说明

我很难清楚地了解什么是MySQL 5.6正在引入w / r / t memcache.

据我了解,memcache本质上是一个巨大的,共享的,驻留内存的哈希表,由服务器memcached管理.特别是,它对持久性数据存储一无所知,并且在这方面不提供任何服务.它只知道键和值(例如Perl哈希).

我认为MysqL 5.6引入的是Nosql API,由此MysqL客户端可以通过密钥而不是SELECT语句从MysqL服务器请求数据. (并且类似地,他们可以使用key = value对执行更新). MysqL使用memcached将这些内容缓存在内存中以提高性能,但也要注意诸如在更新过期之前将更新写回数据库等问题.

换句话说,memcached的使用是MysqL 5.6 Nosql功能的实现细节,并且不是应用程序程序员需要注意的事情.

我欢迎对我的理解进行任何更正或扩大.

谢谢,
小伙子

解决方法:

我认为这很简单(根据官方文档):

我不同意您的最后一句话,应用程序程序员必须真正意识到memcache插件,因为将其安装在MysqL服务器上意味着他可以决定(也许会被迫)通过memcached语言界面或通过sql接口

为了更好地了解此插件对应用程序设计的影响,您应该知道MysqL使用3个配置表来进行适当的内存缓存管理.了解“ cache_policies”的工作原理将为您的某些疑问提供一些帮助:

Table cache_policies specifies whether to use InnoDB as the data store of memcached (innodb_only), or to use the Traditional memcached engine as the backstore (cache-only), or both (caching). In the last case, if memcached cannot find a key in memory, it searches for the value in an InnoDB table.

这里是链接innodb-memcached-internals

上面的引号表示,根据您为特定键值决定的内容,您将有不同的应用场景:

> innodb_only->意味着您可以通过sql接口或memcached接口查询数据,这是一些memcached语言接口示例memcached-interfaces链接

>仅缓存->意味着您应该仅通过memchached接口查询数据
>缓存->表示您可以同时使用两个接口(请注意,存储机制会稍有变化)

当然,后一个配置决定与您的特定需求严格相关

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐