问题标签 [libmemcached]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 如何使用 Zend 管理 Zend 会话保存处理程序?
我想将 zend 会话保存在memcache
而不是files
基于会话管理。我已经memcache.dll
在 Windows 8 x64 系统中正确添加了文件,并检查它memcache
工作正常,并且还安装了memcached
Windows 服务并显示memcached Server
正在运行。
到目前为止,我已经搜索了管理 Zend 会话保存处理程序类。我找到了一个很好的,可能是我搜索中最好的,Mike Willbanks的文章,这里是一个链接。我也在此处粘贴使用 Memcache 的 Zend 会话保存处理程序的类名。
以前有没有人实现过这个会话保存处理程序?如果是,请帮助我。
你能分享Zend session save handler
一个类,你使用什么,application.ini 设置和 Bootstrap.php 设置吗?
提前致谢。
c - 内存缓存超时
我找到了关于在 C/C++ 中使用 libmemcached 的示例代码。但是我不明白两次超时的含义:
- memcached_behavior_set() 的 memcached_timeout
memcached_set() 过期
rc = memcached_behavior_set( memc_primary, MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT , memcached_timeout );
rc = memcached_set( memc_primary, memcached_key_val, memcached_key_len, save_value, strlen( save_value ), expire, 0 );
你能解释一下它们的用途吗?
非常感谢!
python - pylibmc - 如何支持大于 1 MB 的值
我已经使用 -I 3m 选项运行 memcached。
但是我需要告诉 pylibmc 大小变化吗?
我试过这个:
但我得到了这个:
php - 内存缓存问题
我正在使用 AMPPS 3.2、PHP 5.6 开发 OSX 10.10.5。我正在尝试安装 memcached 以使用 PHP,但到目前为止还没有运气。
到目前为止我做了什么:
- 我已经安装下载源
- 使用自制软件(也更新它)
- 使用 pecl
我第一次尝试时遇到关于架构不匹配的错误,然后我意识到带有 AMPPS 的 PHP 版本是 32 位,而 OSX 是 64 位,所以我添加了这个标志: CFLAGS='-arch i386' 解决了这个问题,但现在我得到了另一个错误:
有任何想法吗?
php - 与失败的缓存节点不一致的数据
我遇到了数据库中的数据恢复到旧状态的问题。我想我已经将问题缩小到这种情况。
想象一下像这样发生的两次购买的序列:
- 所有缓存节点都在工作
- 用户登录(他们的数据从数据库中提取并存储在 memcached 中)
- 缓存节点宕机
- 用户继续浏览(由于在缓存中找不到他们的数据,因此从数据库中提取并存储在 memcached 中)
- 用户执行一些操作来转换他们的记录[例如升级](他们的记录在缓存和数据库中更新)
- 缓存节点恢复
- 我们再次从缓存中拉取用户的数据,它来自之前关闭的原始缓存节点
- 现在我们有一个问题:缓存中的节点已过期!
- 用户进行另一个操作来转换他们的记录
- 这保存在缓存和数据库中,但由于它基于过时的记录,因此它会踩踏先前的更改并有效地还原它
我们现在丢失了数据,因为数据库记录被部分过时的信息重写。
如何使用 PHP5 和具有持久连接的 libmemcached 来防止这种情况发生?我想我想要的是让缓存节点根本不进行故障转移;它应该只是无法读取和写入该节点,但不会将其从池中删除,这样我就不会得到重复的记录。
当一个节点出现故障时,这将使我的数据库上的负载增加 1/n(其中 n 是缓存节点的总数),但这比以不一致的数据结束要好。
不幸的是,我无法理解应该更改哪些设置才能获得此行为。
php - php memcached 无法识别恢复的 memcached 服务器
我启动了 2 个 memcached 服务器,将数据写入它们。
我关闭了一台 memcached 服务器。我可以看到剩余的服务器获得了新的 memcached 写入。
第二台服务器恢复后,php memcached 没有使用第二台服务器。这是我正在使用的配置。我究竟做错了什么 ?
python-2.7 - 如何连接到 memcachedb 并使用 API
我已经根据Memcachedb: The complete guide安装了memcachedb,并且我可以按照指南中的说明使用 telnet 设置和获取键值。
我真正想做的是从 python 脚本中设置和获取键值对。
我通过以下命令在 Ubuntu 机器上运行 memcachedb:
sudo ./memcachedb -vv -u root -H ~/mcDB/ -N
我阅读并发现可以使用 libmemcached python 客户端与 memcachedb 进行通信。所以,我正在使用以下测试脚本
但它给出了以下输出:
返回值 0
得到结果 无
我也试过用 127.0.0.1 替换 localhost,也不起作用。
事实上,当我使用 telnet 设置和获取时,运行 python 脚本时 memcachedb(-vv 选项)没有输出。
那么如何连接到memcachedb并通过python(get和set)执行命令?
python - 加载批量数据的正确方法
我正在尝试将大量数据加载到 memcachedb 中。我正在 MySQL 数据库上运行一些查询,我想将这些查询的结果存储在 memcachedb 中,以便以后轻松访问。
目前,我只是使用简单的 set 命令将结果存储在 memcachedb 中,但是由于这些结果有数十亿个,将它们一个一个地存储在一个循环中是非常低效且耗时的。所以,我想知道是否有更好的方法将数据加载到 memcachedb 中?就像传统 RDMS 中的数据导入向导
我正在使用 pylibmc 连接到 memcachedb。
magento - 第 395 行的 libmemcached.php
在 local.xml 中启用 memcached 时来自 /var/log/system.log 的错误:
2016-03-06T00:37:16+00:00 ERR (3):警告:在第 395 行的 /public_html/demo/lib/Zend/Cache/Backend/Libmemcached.php 中除以零
站点位于与 cloudlinux 的共享主机上。local.xml 中的 Memcached 部分如下所示:
任何想法如何解决这一问题?为了避免此错误,我是否需要在 local.xml 中进行任何修复?我在 cpanel 中检查 CPU 使用率,它几乎一直是 88/100,如果我从 local.xml 禁用 memcached,CPU 使用率会下降到正常的 22/100。
第 395 行是:} else {
php - LibMemcached 崩溃 php-fpm
我有 PHP:
root@15048:/# php -v
PHP 7.0.3-1~dotdeb+8.1 (cli) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev,版权所有 (c) 1999-2016,由 Zend Technologies 提供
安装了 memcached 库:
我已经编写了使用 memcached 的类:
但是当我取消注释“设置”函数时,只需取消注释,永远不要调用它,php崩溃......
我试过memcached“添加”功能有同样的问题......
[26-Mar-2016 14:26:42] 警告:[pool www] 孩子 15541 在信号 11 (SIGSEGV) 上退出 26.168556 秒后开始
[26-Mar-2016 14:26:42] 通知:[pool www] 孩子 15566 开始
[26-Mar-2016 14:26:42] 警告:[pool www] 孩子 15542 在信号 11 (SIGSEGV) 上退出 10.321759 秒后从开始
[26-Mar-2016 14:26:42] 通知:[pool www] 孩子 15567 开始
[2016 年 3 月 26 日 14:26:43] 警告:[pool www] 孩子 15567 在信号 11 (SIGSEGV) 上从开始 1.305421 秒后退出
[26-Mar-2016 14:26:43] 通知:[pool www] 孩子 15578 开始
[26-Mar-2016 14:26:44] 警告:[pool www] 子 15540 在信号 11 (SIGSEGV) 上退出 28.413800 秒后从开始
[26-Mar-2016 14:26:44] 通知:[pool www] 孩子 15579 开始