gpt4 book ai didi

php - 本地 apache 服务器上的奇怪 memcache 行为

转载 作者:行者123 更新时间:2023-12-04 18:32:36 26 4
gpt4 key购买 nike

我目前在本地部署我的 Web 服务 api 时遇到问题。我正在使用带有 PHP Memcache 扩展的 memcached。这是以下行为;

我有一个登录功能,首先使用以下代码检查用户信息是否在内存中;

$cache = Memcacher::get_instance()->load( 'user.' . $email);
  • 如果缓存存在,则返回变量$cache成为 true .
  • 如果缓存不存在,那么我将使用以下代码将其保存到内存中;
    $cache = Memcacher::get_instance()->save( 'user.' . $login['value']['email'], $login);

  • 参数 $login是一个保存用户信息的关联数组。

    将其保存到内存后,我尝试重新登录。但是,在我保存到 memcached 服务器 3-4 次之前,它不保存信息。

    3-4登录后,我成功从缓存中获取登录信息。

    谁能解释我这种奇怪的行为?是否有任何 memcached 配置变量来防止这种情况?

    注意:我用 sudo service memcached restart 重新启动 memcached 来刷新内存
    在 Ubuntu 上

    注意:Memcacher 是一个自定义模块,它使用 PHP Memcache 扩展的 set()get()功能

    注意:这里是 Memcacher 的源代码

    最佳答案

    您正在将数组与字符串连接起来。在某些情况下,$login 可能不是一个数组,因此您将开始接收您拥有的信息,因为串联将起作用。但是如果是数组,就无法将key保存在memcache中。你会收到一个通知,我猜你忽略了。

    关于php - 本地 apache 服务器上的奇怪 memcache 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15720531/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com