我想为大小和点击量编译数据...
我刚刚在虚拟机上安装了 Linux Ubuntu,需要在其上安装 memcached。我试过
apt-get install memcached
Run Code Online (Sandbox Code Playgroud)
但它安装了旧版本 1.2.2(来自本地存储库)。我需要安装 v 1.4.1,但如何从命令行将其下载到 Linux 机器上?我知道应该有办法,但我对 linux 不太好......
任何帮助将非常感激!
谢谢你,安德烈
我在几台 Memcached 服务器上运行着约 100GB 的数据,但我们正在将所有基础设施迁移到 Amazon AWS,因此我想找到一种方法在这些新服务器上复制这些信息。
我现在遇到的问题是,要将所有信息提交到数据库,我需要大约 12-14 小时,而在这种情况下,应用程序会发生这种情况。必须下降(我们获得的数据/单位时间比我们可以保存到数据库的数据多)。
我们主要关心的是应用程序在此期间保持活动状态,因此我想知道您是否可以建议任何工具,允许我们将数据从一台 Memcached 服务器复制到另一台,而不必关闭服务器或不必担心这样做手。
有没有办法修改 Debian 设置,以便内存可以更多地用于磁盘读/写缓存?我已经在使用 RAID 0,但对于多个用户来说这还不够,而且磁盘几乎无法使用。
Torrent 非常使用磁盘,而 rTorrent 没有缓存设置。
更新: free -m 的输出是
total used free shared buffers cached
Mem: 7899 7848 50 0 59 7369
-/+ buffers/cache: 420 7479
Swap: 3998 0 3998
Run Code Online (Sandbox Code Playgroud)
为什么缓存这么多内存?
我们的 memcache 安装最近开始删除密钥,我们不确定为什么。大量密钥同时消失。
Memcache 报告驱逐低到不存在,我们的应用程序无法清除 memcache(它只能删除特定键)。即使应用程序不知道的密钥也会被删除,因此我们非常确信它们已经过期。然而,我们的内存缓存配置已经有一段时间没有被触及了。
以前有没有人调试过这样的问题,如果是这样,您是否建议我们采取任何步骤?memcache 的过期策略有多灵活 - 我们是否可能突然遇到基于(例如)键写入频率的标准?
我的任务是弄清楚如何为高可用性、高流量、动态、基于 Flash 的 Web 应用程序进行大规模部署。该应用程序很有可能会增长到 200 万用户或更多。
当然,到了真正做的时候,我很可能会请一位专家来帮助我。目前,这都是理论上的,我只是想知道如何去做。
这是我目前的想法:
我的工作主要是弄清楚硬件,以及如何部署和维护它。
至于维护这个野兽,我正在研究 Slack、Rightscale、Landscape、VMware。
我也在考虑将它部署在 Amazon EC2 上,但我更愿意自己架设它,因为从长远来看,它看起来会便宜得多。如果需要更多,我可能会从这个机架开始并添加 EC2 实例。
你怎么看,这是矫枉过正吗?不够?我弄明白了吗,有什么我遗漏的吗?
感谢所有阅读和回复的人!
我遇到了 memcached 大小限制的问题:

如何增加 limit_maxbytes?因为 bytes_writing 超过 limit_maxbytes?
我使用 memcached 包在 Debian 上安装了 memcached。memcached 实例从 384 MB 开始。然后我尝试连接:
jcisio@cecile:~$ telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set mykey 0 60 5
get mykey
CLIENT_ERROR bad data chunk
ERROR
stats items
END
Run Code Online (Sandbox Code Playgroud)
这是什么意思?通常get mykey应该返回 5。
stats 命令给出
STAT pid 5456
STAT uptime 21334
STAT time 1326180707
STAT version 1.4.5
STAT pointer_size 64
STAT rusage_user 0.168010
STAT rusage_system 0.204012
STAT curr_connections 5
STAT total_connections 9
STAT connection_structures 6
STAT cmd_get 0
STAT cmd_set …Run Code Online (Sandbox Code Playgroud) 根据 Apple 的文档,Memcached 似乎在 OS X 上预装了 Xcode。为了确保我没有出现幻觉,我查看了 Apple 的开发者工具文档。是的,Apple 支持并记录了 memcached:
显然,从至少 10.6 开始,memcached 与 Xcode 一起安装。
我问这个的原因是在 Web 和 SO 上有很多人询问如何在 OS X 上安装 memcached,但奇怪的是似乎没有人提到最简单的方法是通过 AppStore 安装 Xcode(或使用 DMG)。给出的所有答案都涉及使用自制软件或其他一些复杂的方法从源代码安装 memcached。
Apple 提供的 memcached 不够好有什么令人信服的理由吗?我没有看到从源代码编译和安装 memcached 的任何优势,因为有 Apple 支持的版本。
我有基于 Memcached 变量的聊天引擎,将它们放入数组并通过 jquery 在另一端读取它们,
它在 95% 的情况下都可以正常工作,但是当服务器负载很高时 memcached(假设它是 memcached)崩溃和浏览器卡住了。
我不认为它的 jquery 问题,因为这只发生在服务器负载非常高的时候。
我需要一种方法来监视 memcached 服务器或以某种方式将日志文件写入失败/错误所在的位置...
关于我如何做到这一点的任何想法?或者知道为什么 memcached 服务器会失败?我按如下方式运行 memcached
$GLOBALS['MemCached'] = FALSE;
$GLOBALS['MemCached'] = new Memcache;
$GLOBALS['MemCached']->pconnect('localhost', 11211);
Run Code Online (Sandbox Code Playgroud)
我的 memcached 配置如下
#! /bin/sh
#
# chkconfig: - 55 45
# description: The memcached daemon is a network memory cache service.
# processname: memcached
# config: /etc/sysconfig/memcached
# pidfile: /var/run/memcached/memcached.pid
# Standard LSB functions
#. /lib/lsb/init-functions
# Source function library.
. /etc/init.d/functions
PORT=11211
USER=memcached
MAXCONN=1024
CACHESIZE=128
OPTIONS=""
if [ -f …Run Code Online (Sandbox Code Playgroud) 我注意到我们的 web 项目 (Drupal) 在虚拟机中使用 memcached 时运行速度较慢。页面加载时间是没有 memcached 的两倍。我没有注意到任何不自然的 memcached 行为。
虚拟框是(使用 vagrant):
Drupal 的特定设置是:
$conf['cache_backends'][] = 'sites/all/modules/contrib/memcache/memcache.inc';
$conf['cache_class_cache_form'] = 'DrupalDatabaseCache';
$conf['cache_default_class'] = 'MemCacheDrupal';
$conf['memcache_key_prefix'] = 'oursite_';
Run Code Online (Sandbox Code Playgroud)
只是将其与本机(非虚拟化)环境进行比较 - 在同一项目上,memcached 提高了 10-20% 的性能。
任何的想法?有什么地方可以让我继续调查吗?
我正在考虑用 elasticsearch 替换 memcached。基本上,我需要减少我的软件堆栈,因为我将使用弹性进行搜索,我正在考虑创建一个索引作为通用缓存,我将在其中存储各种项目。
有没有办法创建这样一个“通用桶”,可以容纳不同的物品而不会产生弹性抱怨?从我目前看到的情况来看,当您第一次存储一个项目时,elastic 会自动为每个键创建一个类型。如果您尝试使用不同的值保存碰巧已经映射了键弹性的不同项目,这可能会导致问题。
有什么方法可以完成上述操作?
问候
我的客户正在运行许多使用 memcached 的脚本,但他们都使用 localhost 作为地址。我的本地主机服务器现在内存不足,因为它正在做很多其他事情,比如 WWW 和 MySQL 服务器。
现在我有了一个全新的 16 GB RAM 服务器,我可以将它用作专用的 memcached 服务器。如何将 localhost:12111 重定向到 domain.com:12111 服务器?
我无法将 localhost 切换到 /etc/hosts 中的其他内容,因为我所有的数据库都使用这样的地址。
memcached ×13
linux ×3
memcache ×3
debian ×2
drupal ×1
forwarding ×1
mac-osx ×1
monitoring ×1
mysql ×1
opennms ×1
performance ×1
php ×1
port ×1
scaling ×1
stats ×1
ubuntu ×1
vagrant ×1
virtualbox ×1
web-server ×1