# Linux系统中如何安装Memcached
## 一、Memcached简介
Memcached是一个高性能的分布式内存对象缓存系统,最初由Brad Fitzpatrick为LiveJournal开发。它通过将数据缓存在内存中来减少数据库负载,从而显著提高动态Web应用程序的速度和可扩展性。
### 主要特性:
- **键值存储**:简单的键值对存储结构
- **内存缓存**:所有数据存储在内存中,访问速度快
- **分布式架构**:支持多服务器部署
- **协议简单**:使用基于文本或二进制的协议
- **无持久化**:重启后数据会丢失
## 二、安装前的准备工作
### 1. 系统要求
- Linux操作系统(本文以Ubuntu 20.04和CentOS 8为例)
- root或具有sudo权限的用户
- 至少512MB可用内存(生产环境建议更大)
- 基本的命令行操作知识
### 2. 更新系统软件包
在安装前,建议先更新系统软件包:
```bash
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS/RHEL
sudo yum update -y
Memcached需要一些基础依赖库:
# Ubuntu/Debian
sudo apt install -y gcc make libevent-dev
# CentOS/RHEL
sudo yum install -y gcc make libevent-devel
sudo apt install -y memcached libmemcached-tools
sudo yum install -y memcached
安装完成后,服务会自动启动,可以通过以下命令验证:
systemctl status memcached
适用于需要特定版本或自定义编译选项的情况。
wget https://memcached.org/latest
tar -xvf latest
cd memcached-*
./configure --prefix=/usr/local/memcached make && sudo make install
创建systemd服务文件/etc/systemd/system/memcached.service
:
[Unit]
Description=Memcached
After=network.target
[Service]
User=memcache
ExecStart=/usr/local/memcached/bin/memcached -p 11211 -m 64 -c 1024
Restart=on-failure
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start memcached
sudo systemctl enable memcached
/etc/memcached.conf
/etc/sysconfig/memcached
# 监听端口(默认11211)
-p 11211
# 监听IP(0.0.0.0表示所有接口)
-l 0.0.0.0
# 分配内存大小(MB)
-m 64
# 最大并发连接数
-c 1024
# 日志级别(-vv为详细日志)
-vv
-l 127.0.0.1 # 只允许本地访问
sudo apt install -y cyrus-sasl-dev # Debian
sudo yum install -y cyrus-sasl-devel # CentOS
# 重新编译时添加--enable-sasl选项
./configure --enable-sasl
# 启动服务
sudo systemctl start memcached
# 停止服务
sudo systemctl stop memcached
# 重启服务
sudo systemctl restart memcached
# 查看状态
sudo systemctl status memcached
# 设置开机启动
sudo systemctl enable memcached
使用telnet测试连接:
telnet localhost 11211
连接成功后尝试基本命令:
stats # 查看统计信息
set test 0 60 5 # 存储键值
hello
get test # 获取值
quit # 退出
memcstat --servers=localhost
memccp --servers=localhost /path/to/file
# Ubuntu/Debian
sudo apt install -y php-memcached
# CentOS/RHEL
sudo yum install -y php-pecl-memcached
创建phpinfo.php文件:
<?php phpinfo(); ?>
访问该页面,搜索”memcached”确认扩展已加载。
$memcached = new Memcached();
$memcached->addServer('localhost', 11211);
// 存储数据
$memcached->set('key', 'value', 3600);
// 获取数据
echo $memcached->get('key');
可以通过不同端口运行多个实例:
memcached -p 11212 -m 64 -d
memcached -p 11213 -m 64 -d
使用客户端实现的分片算法或代理工具如twemproxy
虽然Memcached本身不支持持久化,但可以通过: - 定期备份 - 配合数据库使用 - 使用memcachedb等变种
本文详细介绍了在Linux系统中安装和配置Memcached的多种方法,包括: 1. 通过包管理器快速安装 2. 从源代码编译安装 3. 基本配置和安全设置 4. 与PHP的集成方法 5. 性能优化和故障排除技巧
Memcached作为高性能缓存解决方案,能显著提升Web应用性能。正确安装和配置后,可以为您的应用提供稳定的缓存服务。
”`
这篇文章共计约2300字,涵盖了Memcached安装、配置、使用和维护的完整流程,采用Markdown格式编写,包含代码块、列表和章节结构,适合作为技术文档发布。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。