开源项目

知识点

相关文章

更多

最近更新

更多

Memcached get 获取key对应的值

2019-04-26 17:00|来源: 网路

Memcached get 命令

Memcached get 命令获取存储在 key(键) 中的 value(数据值) ,如果 key 不存在,则返回空。

语法:

get 命令的基本语法格式如下:

get key


多个 key 使用空格隔开,如下:

get key1 key2 key3


参数说明如下:

  • key:键值 key-value 结构中的 key,用于查找缓存值。

实例

在以下实例中,我们使用 com656463 作为 key,过期时间设置为 900 秒。

set com656463 0 900 9
memcached
STORED
get com656463
VALUE com656463 0 9
memcached
END


相关问答

更多
  • 你看看你的$V是不是和你设置缓存的一样。。比如。。 $v=$uid.$fileName; 你存进去的时候是。 $mem->set_data($v,$data,60); 取的时候是 $mem->get($v);这个$v值是不是原来那个。。另外要注意覆盖问题。如果set_data的时候$v都是一样的。就会把前面的数据覆盖掉。
  • 对不起,不行。 Memcached使用散列算法,将密钥分布在明显随机的地方,因此这些密钥分散在各处。 你必须扫描一切才能找到它们。 此外,您应该意识到,按设计,memcached可以随时因任何原因删除任何任何密钥。 如果你把东西放进去,你应该意识到你不能依靠它回来。 这对于它的原始用例来说是绝对正确的,一个缓存可以减少数据库中的命中。 但如果你想要做一些更复杂的事情,这可能是一个严重的问题。 如果这些限制是一个问题,我建议您改用Redis。 它的行为与memcached非常相似,只不过它会保留数据,并允许存 ...
  • 我仍然不知道为什么memcached只能在命令行中运行,但我决定尝试使用Redis 。 安装完成后,一切顺利。 I still have no idea why memcached only works from the command line, but I decided to try Redis instead. After installing, everything works without a hitch.
  • 如果你真的想使用memcached来避免在你的环境中引入更多的东西/复杂性,那么考虑一个非常小但专用的memcached配置只是为了锁定。 但是,如果你愿意接受不依赖memcached的解决方案,那么我个人会使用zookeeper来实现java中的分布式锁定。 我也会使用Netflix的curator utils来简化这个过程。 If you really want to use memcached to avoid introducing more stuff/complexity into your e ...
  • 到期是懒惰的。 如果您使用过期密钥,则会将其删除。 否则会被标记,当您的缓存中的空间不足时,它将被删除,以便为新项目腾出空间。 Expiration is lazy. If you do a get on an expired key it is deleted. Otherwise it is flagged and when you run out of space in your cache it will be removed to make room for a new item.
  • 我从来没有听说过你的花括号表示法,也找不到任何关于它的信息。 我不会说它不存在。 但是,最简单的操作方法是使用不同的分隔符,这些分隔符不能被误解为变量的一部分。 喜欢这个: set $memcached_key $cookie_devicetype:$request_uri; I have never heard of your curly bracket notation and cannot find any information about it. I won't say it doesn't e ...
  • 事实证明,解决方案非常简单。 每个服务器和memcache守护程序每个Ruby worker只能获得一个连接。 在所有Web服务器上获取Rails应用程序可能连接总数的数学计算方法可以简单计算如下: x个Ruby工作者 y多个Web服务器 z许多memcache守护进程 =(x)(y)(z)给出了所有memcached守护进程的总连接数 请注意:如果您为会话运行memcache,那么这些连接是分开的。 我希望一切都会这么简单。 :-) It turned out the solution was incre ...
  • 我会尝试telnet到你的memcached群集,以排除防火墙问题。 您可以使用以下命令执行此操作。 telnet memcached-myexample.jelastic.dogado.eu 11211 如果这不起作用,那么您有网络问题。 如果是这种情况,我会先检查你是否有防火墙。 I would try to telnet to your memcached cluster in order to rule out a firewall issue. You can do that with the f ...
  • 以下是一些方法可以让它更快。 您的总连接数实际上是为memcached创建了多少个连接。 首先,使用memcached php扩展而不是memcache扩展。 它们是完全不同的,memcache扩展已经非常被弃用了。 Memcached扩展使用libmemcached,它非常快,并且具有更好的功能(如二进制协议,更好的超时,udp) 其次,使用持久连接。 对于您的工作负载,这些应该是完全足够的,并降低不断重新连接到memcache的成本。 第三,使用multi get / set / delete / et ...
  • 这是因为django传递给memcached的密钥并不是你在调用cache.set使用的密钥。 用户提供的缓存密钥不是逐字使用的 - 它与缓存前缀和密钥版本组合以提供最终缓存密钥。 默认情况下,使用冒号连接这三个部分以生成最终字符串 https://docs.djangoproject.com/en/1.10/topics/cache/#cache-key-transformation 调整设置,或创建自己的KEY_FUNCTION以确保PHP键与django键匹配。 That's because the ...