要在 Ubuntu 上测试 memcached,我会运行以下命令:
echo "stats settings" | nc -U /run/mydir/memcached.sock
不过现在我换成了 Debian,Debiannc
不支持这个-U
选项。
我试过了ss
,没有喜悦。listen
telnet -b /run/mydir/memcached.sock
Debian 中的等效命令是什么?
要在 Ubuntu 上测试 memcached,我会运行以下命令:
echo "stats settings" | nc -U /run/mydir/memcached.sock
不过现在我换成了 Debian,Debiannc
不支持这个-U
选项。
我试过了ss
,没有喜悦。listen
telnet -b /run/mydir/memcached.sock
Debian 中的等效命令是什么?
我需要将 centos7 上的 memcached 从 1.4.15 更新到 1.4.33 但是 yum update 说没有要更新的东西,显然有更新的版本。我在谷歌上找不到任何解释如何更新它的东西,只是用 yum install memcached 安装它——它不会安装最新的!
yum update memcached
Loaded plugins: fastestmirror, universal-hooks
Loading mirror speeds from cached hostfile
* EA4: 93.115.203.100
* cpanel-addons-production-feed: 93.115.203.100
* cpanel-plugins: 93.115.203.100
No packages marked for update
我正在删除一个用户。
# userdel u1
The memcache was not invalidated by nss responder.
但最终用户被删除。"The memcache was not invalidated by nss responder" 是什么意思?
软呢帽 34
谢谢
我对服务器开发真的很陌生。我有一个Server version: Apache/2.4.41 (Ubuntu)
用于 Django 的服务器 (),它在 apache2 上运行。我想将 Memcache 用于大型查询集。我只想使用以下 Django 未来:
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.PyMemcacheCache',
'LOCATION': '127.0.0.1:11211',
}
}
据我了解,我必须安装 Memcached、配置并从systemctl
. 正如我之前提到的,我在 systemctl 上有一个 apache2 服务器。如果我将安装 Memcached sudo apt install memcached
,会不会有问题?
我真的很害怕在服务器上安装一些东西,因为我们有近 20 个项目在 apache2 上运行,我不想破坏它。我过去尝试同时使用 apache2 和 nginx,这会导致很大的问题。
我应该按照哪种方式使用 memcached?我必须购买新服务器吗?
我已经在 ubuntu 18.04 上安装了 memcached 和 libmemcached-tools。这两个命令都有效:
memcstat --servers=localhost
memcstat --servers=127.0.0.1
但是在 memcstat 的手册页中它说:
您可以通过以下选项指定服务器:
--服务器
或通过环境变量:
'MEMCACHED_SERVERS,--args'
我找不到任何有关如何设置 MEMCACHED_SERVERS 变量的示例。我试过了:
MEMCACHED_SERVERS=127.0.0.1
MEMCACHED_SERVERS="127.0.0.1"
MEMCACHED_SERVERS="--args 127.0.0.1"
MEMCACHED_SERVERS="localhost"
MEMCACHED_SERVERS=localhost
MEMCACHED_SERVERS="--servers=localhost"
但我从 memcstat 得到的只是“没有提供服务器”。
我正在开发一个 Varnish 管道,它为公共资源和受限资源提供服务。
由于对公共资源的访问占流量的绝大多数(> 99.9%),我想创建快捷方式来绕过身份验证令牌验证和其他此类非受限资源的事情 - 或者更好的是,只通过 authN/Z如果资源在某种黑名单中,则为路径。
此黑名单最多可包含大约 1M(在未来几年内)UUID4 条目。这样的纯文本文件在磁盘上占用大约 3.7Gb,因此具有良好 RAM 容量的机器应该能够将其全部保存在内存中。
我的问题是关于如何实现这个黑名单,所以查找速度非常快。我想到了一个“本机”哈希集,或者 Memcached,或者类似的方法。如果 Memcached 是分布式的,它很可能会减慢速度。有没有人实施过类似的方法?Varnish 有哪些工具可供我使用?
我在我的 docker 上设置 memcached 时遇到问题。运行时出现错误:docker run --name=memcache -p 11211:11211 -d memcached memcached -m 128
这是运行上述命令后出现的错误
docker: Error response from daemon: driver failed programming external connectivity on endpoint memcache (9f4bd30f7253ee185f6a160ef8e89d3f3c2d46f0361ec15f11a6975477c19430): Error starting userland proxy: listen tcp 0.0.0.0:11211: bind: address already in use.
最后它说选择的端口已经被占用。因此,为了确认 memcached 没有监听任何端口,我运行了“ docker ps -a ”,输出如下:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
116acff4b1aa memcached "docker-entrypoint.s…" 10 minutes ago Created memcache
a4e1a6168bca staticwebserver:v3 "/init.sh" 2 weeks ago Up 16 hours 0.0.0.0:8002->80/tcp lucid_mccarthy
a27174f8a988 staticwebserver:v3 "/init.sh" 2 weeks ago Up 16 hours 0.0.0.0:8001->80/tcp thirsty_shockley
因为我看不到容器(memcached)侦听任何端口,所以我想看看哪个进程已经在侦听端口 11211。所以我运行了netstat -pna | grep 11211
tcp 0 0 127.0.0.1:11211 0.0.0.0:* LISTEN 5703/memcached
在这里我很困惑,memcached 工作吗?还是有什么问题?
我试图杀死恶魔,但在我杀死它的那一刻它又弹出来了。
在我的 CentOS 7 上,Memcached 在 SSH 上运行和工作,但在 PHP 文件中不工作。我关注了这篇文章:https ://www.mynotepaper.com/install-memcached-on-centos-7 。这种方法在我以前的服务器上运行良好。
我已经使用 telnet 测试了 Memcached。它工作正常。
$ telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set test 0 100 5
Hello
STORED
get test
VALUE test 0 5
Hello
END
使用 telnet 存储数据后,我通过 PHP 命令在 SSH 上进行了测试。它也有效:
php -r '$c = new Memcached(); $c->addServer("127.0.0.1", 11211); var_dump( $c->getAllKeys() );'
array(1) {
[0]=>
string(4) "test"
}
但在 PHP 文件中,它不起作用。PHP代码:
<?php
$c = new Memcached();
$c->addServer("127.0.0.1", 11211);
var_dump( $c->getAllKeys() );
?>
它总是显示bool(false)
。这是我的PHP 信息截图。
你能告诉我我的错误是什么吗?
我正在测试将我的 Roundcube 1.3.8 安装转移到 php 7.3。它是负载平衡的,我一直在使用 memcache 进行 php 5 的会话存储,没有任何问题: $config['session_storage'] = 'memcache';
// Use these hosts for accessing memcached
// Define any number of hosts in the form of hostname:port or unix:///path/to/socket.file
$config['memcache_hosts'] = array( 'server1:11211','server2:11211');
当我在 php 7.3.3 上尝试相同的配置时,我收到以下错误:
[17-Mar-2019 19:11:16 +0000]: DB Error: Failed to connect to memcached. Please check configuration in /path/to/roundcube/program/lib/Roundcube/rcube_session_memcache.php on line 49 (GET /mail/)
我已经能够从 php 7.3 运行一个简单的测试脚本来验证 memcache 确实在工作。
有什么建议为什么这不适用于 Roundcube 1.3.8?
我的 memcache 服务器已启动并在Server A上运行。
service memcached start
memcached -d -u nobody -m 512 -p 11211 127.0.0.1
chkconfig --list | grep memcache
chkconfig memcached on
我在服务器 B(不同的 IP)上也有一个 Web 应用程序。如何为 memcache 配置服务器 A以允许来自服务器 B的传入连接?